2013-09-22 1 views
0

현재 Psychopath Xpath 프로세서는 XercesLoader 클래스를 사용하여 bytestream을로드하고 org.w3c.dom.Document를 생성하고이를 전달하여 Xpath를 평가할 수 있습니다.Axiom을 사용하여 생성 된 DOM 문서 전달 방법 Psychopath 프로세서에서 XPath를 평가하기 위해

InputStream is = new FileInputStream("resources/test.xml"); 
DOMLoader loader = new XercesLoader(); 
Document doc = loader.load(is); 

공리를 사용하여 org.w3c.dom.Document를 생성하고 Psychopath로 전달했습니다.

InputStream is = new FileInputStream("resources/test.xml"); 

    OMMetaFactory omMetaFactory = OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM); 
    OMFactory omFac = omMetaFactory.getOMFactory(); 
    OMXMLParserWrapper wrapper = OMXMLBuilderFactory.createOMBuilder(omFac, is) ; 
    Document doc = (Document) wrapper.getDocument(); 

그러나 doc2를 통과 할 때 오류를 "주"org.w3c.dom.DOMException가 스레드

예외 제공 : NOT_SUPPORTED_ERR를 : 구현은 객체 또는 작업의 요청 유형을 지원하지 않습니다. at org.apache.axiom.om.impl.dom.DOMUtil.newDOMException (DOMUtil.java:82) at org.apache.axiom.om.impl.dom.NodeImpl.compareDocumentPosition (NodeImpl.java:212) at org.eclipse.wst.xml.xpath2.processor.internal.types.NodeType.compare_node (NodeType.java:219) at org.eclipse.wst.xml.xpath2.processor.internal.types.NodeType.access $ 0 (NodeType .java : 207) at org.eclipse.wst.xml.xpath2.processor.internal.types.NodeType $ 1.compare (NodeType.java:64) at java.util.TreeMap.put (TreeMap.java:545) at java.util.TreeSet.add (TreeSet.java:255) at java.util.AbstractCollection.addAll (AbstractCollection.java:342) at java.util.TreeSet.addAll (TreeSet.java:312) at org.eclipse.wst.xml.xpath2.pro cessor.internal.types.NodeType.linarize (NodeType.java:415) at org.eclipse.wst.xml.xpath2.processor.DefaultEvaluator.do_step (DefaultEvaluator.java:1165) at org.eclipse.wst.xml. org.eclipse.wst.xml.xpath2.processor.internal.ast.XPathExpr.accept (XPathExpr.java:43) at org.eclipse.wst. org.eclipse.wst.xml.xpath2.processor.DefaultEvaluator.visit (DefaultEvaluator.java:366) 에서 xml.xpath2.processor.DefaultEvaluator.do_expr (기본값 : xpath2.processor.ast.XPath.accept (XPath.java:58) at org.eclipse.wst.xml.xpath2.processor.DefaultEvaluator.evaluate2 (DefaultEvaluator.java:325) at org.eclipse.wst.xml. xpath2.processor.ast.XPath.evalua psychopath.main에서 테 (XPath.java:131) (psychopath.java:85는)

설명이 필요합니다. 공리를 사용하여 만든 DOM Document 인스턴스를 Psychopath에 전달하여 XPath를 평가하는 방법은 무엇입니까?

+0

표시 한 오류는 다음 중 어느 것입니까? –

+0

예외의 전체 스택 추적을 게시해야합니다. –

답변

0

설명은 간단합니다. Axiom의 DOM 구현은 compareDocumentPosition 메소드 (DOM 3으로 정의 됨)를 구현하지 않습니다.

관련 문제