PolicyBasedWSS4JInInterceptor asserting RequiredParts policy is destructive of 
SOAP Header DOM in SoapMessage
-------------------------------------------------------------------------------------------------------------

                 Key: CXF-2968
                 URL: https://issues.apache.org/jira/browse/CXF-2968
             Project: CXF
          Issue Type: Bug
          Components: WS-* Components
    Affects Versions: 2.1.10
            Reporter: David Valeri
             Fix For: 2.3, 2.2.11


If a policy such as the following example is enabled, the interceptor 
invalidates the headers stored in SoapMessage#getHeaders().

<sp:RequiredParts>
  <sp:Header Name="MessageID"
      Namespace="http://www.w3.org/2005/08/addressing"; />
</sp:RequiredParts>

The logic uses SOAPHeader#getChildElements(QName).  Per the JavaDoc, this 
element may be destructive of existing references to affected DOM nodes [1].  A 
reference to affected DOM nodes exists in the structure returned by 
SoapMessage#getHeaders().  After the PolicyBasedWSS4JInInterceptor executes, 
any attempt to access the headers returned by SoapMessage#getHeaders() in 
another interceptor will receive the invalidated the DOM nodes.


http://download.oracle.com/javase/6/docs/api/javax/xml/soap/SOAPElement.html#getChildElements%28javax.xml.soap.Name%29



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to