[
https://issues.apache.org/jira/browse/WSCOMMONS-557?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12896762#action_12896762
]
Amila Jayasekara commented on WSCOMMONS-557:
--------------------------------------------
Hi Andreas,
Sorry for placing test xml in a wrong file location. I will submit a new patch
with modifications.
Thankx
AmilaJ
> org.apache.axiom.om.impl.dom.ElementImpl class's hasAttributes() and
> getAttributes() methods are not compatible with DOM interfaces.
> ------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WSCOMMONS-557
> URL: https://issues.apache.org/jira/browse/WSCOMMONS-557
> Project: WS-Commons
> Issue Type: Bug
> Components: AXIOM
> Affects Versions: Axiom 1.2.10
> Environment: Ubuntu, JDK 1.6
> Reporter: Amila Jayasekara
> Attachments: WSCOMMONS-557.diff
>
>
> The class org.apache.axiom.om.impl.dom.ElementImpl implements both DOM
> Element and OMElement interfaces. According to DOM API the method
> hasAttrbutes() should return true if there are attributes attached to current
> node. Also this method will return true if there are namespaces attached to
> current node. But according to current implementation the ElementImpl class
> only checks for namespace nullability. This code will fail if we have a xml
> like follows,
> <?xml version='1.0' encoding='utf-8'?>
> <soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
> wsu:Id="Id-739587016">
> <GetDirectionsResponse xmlns="http://www.example.org/webservices/">
> <GetDirectionsResult>
> <drivingdirections xmlns="">
> <route distanceToTravel="500m" finalStep="false" id="0">Head south on
> Grove St</route>
> </drivingdirections>
> </GetDirectionsResult>
> </GetDirectionsResponse>
> </soapenv:Body>
> In above xml the node "drivingdirections" is having an empty namespace. But
> for "drivingdirections" node, the method "hasAttribute()" should return true,
> as there is a namespace attached to it. But current implementation of
> ElementImpl returns false.
> Also getAttributes() method should return empty namespace ("xmlns=\"\"") for
> "drivingdirections" node. Current implementation doesnt return empty
> namespace as an attribute. Since namespace of drivingdirections is empty,
> namespace of child elements of "drivingdirections" are also null. Therefore
> hasAttribute() method will return false for even elements like "route".
> ("route" element has attributes, therefore hasAttribute() should return true)
> There are 2 rampart issues which depends on this.
> [1] https://issues.apache.org/jira/browse/RAMPART-303
> [2] https://issues.apache.org/jira/browse/RAMPART-128
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.