[
https://issues.apache.org/jira/browse/WSCOMMONS-255?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andreas Veithen reassigned WSCOMMONS-255:
-----------------------------------------
Assignee: Andreas Veithen
> AXIOM DOM based org.w3c.dom.Element.getElementsByTagName and
> getElementsByTagNameNS do not funcion according to spec
> --------------------------------------------------------------------------------------------------------------------
>
> Key: WSCOMMONS-255
> URL: https://issues.apache.org/jira/browse/WSCOMMONS-255
> Project: WS-Commons
> Issue Type: Bug
> Components: AXIOM
> Reporter: Gennady Shumakher
> Assignee: Andreas Veithen
>
> The w3c spec states:
> getElementsByTagName
> Returns a NodeList of all the Elements with a given tag name in the order
> in which they would be encountered in a preorder traversal of the Document
> tree.
> It looks that current implementation of
> org.apache.axiom.om.impl.dom.ElementImpl looks only at the 1st level of
> children and not through the tree.
> Here is the code snippet
> //Instantiate and parse soap message with AXIOM DOM
> DocumentBuilderFactoryImpl.setDOOMRequired(true);
> Document doc
> =DocumentBuilderFactoryImpl.newInstance().newDocumentBuilder().parse(new
> FileInputStream(SOAP_EXAMPLE_XML));
> nl = doc.getDocumentElement().getElementsByTagName("return");
> System.out.println("AXIOM DOM XML Parser found " +
> nl.getLength() + " element(s)"); //AXIOM DOM XML Parser found 0
> element(s)
>
> // Instantiate and parse document with xerces
>
> System.getProperties().setProperty("javax.xml.parsers.DocumentBuilderFactory",
> "org.apache.xerces.jaxp.DocumentBuilderFactoryImpl");
> DocumentBuilderFactory dbf =
> DocumentBuilderFactory.newInstance();
> dbf.setNamespaceAware(true);
> doc = dbf.newDocumentBuilder().parse(new
> FileInputStream(SOAP_EXAMPLE_XML));
> nl = doc.getDocumentElement().getElementsByTagName("return");
> System.out.println("XERCES XML Parser found " + nl.getLength()
> + " element(s)"); // XERCES XML Parser found found 1 element(s)
> SOAP_EXAMPLE_XML.file:
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> <soapenv:Body>
> <xsd:startSessionResponse
> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <return xsi:type="xsd:string">sessionID</return>
> </xsd:startSessionResponse>
> </soapenv:Body>
> </soapenv:Envelope>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.