[ https://issues.apache.org/jira/browse/CXF-3062?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Valeri updated CXF-3062: ------------------------------ Attachment: patched-req-resp-with-no-messageID-response.xml patched-one-way-response.xml patched-one-way-response.xml - This file is a capture of the partial response returned from a one-way request. Note the addition of the relates to MAP with the unspecified value. patched-req-resp-with-no-messageID-response.xml - This file is a capture of a fault generated by a request (req/resp MEP) without a Message ID MAP. Note the addition of the relates to MAP with the unspecified value. All other permutations of faults and MEPs remain unaltered. The patch 1) always includes a relates to MAP in any response, and 2) enforces the message ID MAP on the request message of a req/resp MEP. Earlier versions of CXF may stumble on response messages that use the unspecified value for the relates to MAP as the code did not address this value as a possible value for the MAP. > WS-A support does not enforce Message ID MAP for Req/Resp MEP > ------------------------------------------------------------- > > Key: CXF-3062 > URL: https://issues.apache.org/jira/browse/CXF-3062 > Project: CXF > Issue Type: Bug > Components: WS-* Components > Affects Versions: 2.3.0, 2.2.11 > Reporter: David Valeri > Priority: Minor > Attachments: CXF-3062.patch, patched-one-way-response.xml, > patched-req-resp-with-no-messageID-response.xml > > > The WS-A SOAP Binding [1] does not lay out any specific requirements for the > presence of Message Addressing Properties (MAPs) in the SOAP header. > The WS-A WSDL Binding [2] does define required MAPs for certain WSDL MEPs > [3]. The WSDL Binding requires a WS-A message ID property for a > request-response MEP. A CXF client always sends a message ID when WS-A is in > use, but the MAPAggregator isn't enforcing the presence of the message ID > property on the server side. MAPAggregator currently looks at the message ID > if alowDuplicates is turned off, but only looks if the value is non-null. > The interceptors have access to the MEP and could enforce the presence of the > property when in a request-reply MEP. > Additionally, if the ID is missing, the fault for a request-response MEP > should still carry a relationship MAP per the WS-A WSDL Binding requirements. > It follows that "http://www.w3.org/2005/08/addressing/unspecified" would be > used as the message identifier IRI in this case [4]. > [1] http://www.w3.org/TR/ws-addr-soap/ > [2] http://www.w3.org/TR/ws-addr-wsdl/ > [3] http://www.w3.org/TR/ws-addr-wsdl/#WSDLMEPS > [4] http://www.w3.org/TR/ws-addr-core/#msgaddrprops -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.