86 lines
4.2 KiB
Diff
86 lines
4.2 KiB
Diff
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;
|