Почему я получаю сообщение об ошибке «Уровень 3 DOM не реализован» во время выполнения?
В настоящее время я работаю над созданием веб-службы Apache CXF с привязкой XMLBeans вместо привязки JAXB по умолчанию. Я компилирую и запускаю код с Java 1.6. Я получаюDOM Level 3 Не реализовано " ошибка во время выполнения для следующего фрагмента кода:
ExtType[] extTypeList = p.getExtArray();
for (ExtType extType : extTypeList) {
Node node = extType.getDomNode();
NodeList objList = node.getChildNodes();
for (int i = 0; i < objList.getLength(); ++i) {
Node text = (Node) objList.item(i);
if (text.getNodeName() != null
&& text.getNodeName() == XmlConstant.NODE_NAME) {
info.setDuration(text
.getTextContent());
}
}
}
Точная ошибка, отображаемая в JBoss, выглядит следующим образом:
java.lang.RuntimeException: DOM Level 3 Not implemented
at org.apache.xmlbeans.impl.store.DomImpl._node_getTextContent(DomImpl.java:2516)
at org.apache.xmlbeans.impl.store.Xobj$NodeXobj.getTextContent(Xobj.java:2607)
Из приведенного выше сообщения об ошибке ясно, что метод getTextContent вызывает исключение, поскольку DOM level 3 API 's не найдены во время выполнения. Как мне устранить эту ошибку? Я предполагаю, что япридется выяснить, в каком банке находится DOM API 's и удалите все связанные с DOM классы из этого jar, чтобы DOM API по умолчаниюs, которые идут вместе с jdk, используются вместо этого. Альтернативно, есть ли способ получить текстовое содержимое тега xml, используя DOM, не полагаясь на метод getTextContent?