You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "David Valeri (JIRA)" <ji...@apache.org> on 2010/10/13 02:48:32 UTC

[jira] Created: (CXF-3062) WS-A support does not enforce Message ID MAP for Req/Resp MEP

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.2.11, 2.3.0
            Reporter: David Valeri
            Priority: Minor
         Attachments: CXF-3062.patch

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.


[jira] Updated: (CXF-3062) WS-A support does not enforce Message ID MAP for Req/Resp MEP

Posted by "David Valeri (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-3062?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Valeri updated CXF-3062:
------------------------------

    Attachment: CXF-3062.patch

Attaching proposed patch for discussion.

> 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
>
>
> 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.


[jira] Updated: (CXF-3062) WS-A support does not enforce Message ID MAP for Req/Resp MEP

Posted by "David Valeri (JIRA)" <ji...@apache.org>.
     [ 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.