diff --git a/src/main/java/freemarker/ext/jdom/NodeListModel.java b/src/main/java/freemarker/ext/jdom/NodeListModel.java index 7e963f7..736b781 100644 --- a/src/main/java/freemarker/ext/jdom/NodeListModel.java +++ b/src/main/java/freemarker/ext/jdom/NodeListModel.java @@ -675,7 +675,7 @@ implements else if ("data".equals(localName)) attr = new Attribute("data", pi.getData()); else - attr = new Attribute(localName, pi.getValue(localName)); + attr = new Attribute(localName, pi.getPseudoAttributeValue(localName)); } else if (node instanceof DocType) { DocType doctype = (DocType) node; if ("publicId".equals(localName)) @@ -781,17 +781,17 @@ implements private static final Element getParent(Object node) { if (node instanceof Element) - return((Element) node).getParent(); + return((Element) node).getParentElement(); else if (node instanceof Attribute) return((Attribute) node).getParent(); else if (node instanceof Text) - return((Text) node).getParent(); + return((Text) node).getParentElement(); else if (node instanceof ProcessingInstruction) - return((ProcessingInstruction) node).getParent(); + return((ProcessingInstruction) node).getParentElement(); else if (node instanceof Comment) - return((Comment) node).getParent(); + return((Comment) node).getParentElement(); else if (node instanceof EntityRef) - return((EntityRef) node).getParent(); + return((EntityRef) node).getParentElement(); else // With 2.1 semantics it makes more sense to just return a null and let the core // throw an InvalidReferenceException and the template writer can use ?exists etcetera. (JR) @@ -815,7 +815,7 @@ implements LinkedList list = new LinkedList(); do { list.addFirst(parent); - parent = parent.getParent(); + parent = parent.getParentElement(); } while (parent != null); return list; } @@ -830,7 +830,7 @@ implements list.addFirst(node); do { list.addFirst(parent); - parent = parent.getParent(); + parent = parent.getParentElement(); } while (parent != null); return list; } @@ -885,7 +885,7 @@ implements Element parent = ((Attribute) node).getParent(); doc = parent == null ? null : parent.getDocument(); } else if (node instanceof Text) { - Element parent = ((Text) node).getParent(); + Element parent = ((Text) node).getParentElement(); doc = parent == null ? null : parent.getDocument(); } else if (node instanceof Document) doc = (Document) node; diff --git a/src/main/java/freemarker/ext/xml/_JdomNavigator.java b/src/main/java/freemarker/ext/xml/_JdomNavigator.java index edbc0a1..95a4c01 100644 --- a/src/main/java/freemarker/ext/xml/_JdomNavigator.java +++ b/src/main/java/freemarker/ext/xml/_JdomNavigator.java @@ -122,7 +122,7 @@ public class _JdomNavigator extends Navigator { } else if ("data".equals(localName)) { result.add(new Attribute("data", pi.getData())); } else { - result.add(new Attribute(localName, pi.getValue(localName))); + result.add(new Attribute(localName, pi.getPseudoAttributeValue(localName))); } } else if (node instanceof DocType) { DocType doctype = (DocType) node; @@ -186,7 +186,7 @@ public class _JdomNavigator extends Navigator { Element parent = ((Attribute) node).getParent(); return parent == null ? null : parent.getDocument(); } else if (node instanceof Text) { - Element parent = ((Text) node).getParent(); + Element parent = ((Text) node).getParentElement(); return parent == null ? null : parent.getDocument(); } else if (node instanceof Document) return node;