dom4j で解析済みの xml ドキュメントのノードにアクセスしようとすると、次の例外が発生します。
Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenException
at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)
at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207)
at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:164)
at xmlparser.LevelsExtractor.findI(LevelsExtractor.java:73)
at xmlparser.Main.main(Main.java:33)
パーサーで xml ドキュメントを出力したり、ファイルに保存したりできるため、解析が機能することはわかっています。これが私が使用しているコードです。
ドキュメントを解析するには:
public class Parser {
public Document parseWithSAX(File aFile) throws DocumentException {
SAXReader xmlReader = new SAXReader();
Document doc = xmlReader.read(aFile);
return doc;
}
ノードを取得しようとするために、次の行を試しましたが、すべて同じエラーが発生します。
List list = doc.selectNodes("");
QName qn = new QName("////Token/text()='Introduction'");
Element el = doc.selectSingleNode("////Token/text()='Introduction'");
Node node = doc.selectSingleNode( "/DOCUMENT/PAGE/TEXT/TOKEN/text()= 'Introduction'");
これは、ドキュメント(解析されたxmlドキュメント)に必要なものが含まれていることを意味すると思われるxmlドキュメントを出力します。
System.out.println(doc.asXML());
あなたの助けに本当に感謝します!