You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Sabiya Kazi (JIRA)" <ji...@apache.org> on 2015/12/18 20:00:47 UTC
[jira] [Updated] (CXF-6605) WS-Addressing 07/05 not working
[ https://issues.apache.org/jira/browse/CXF-6605?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sabiya Kazi updated CXF-6605:
-----------------------------
Attachment: AddressingMetadataNamespaceFix.patch
Patch for Missing Addressing Metadata Namespace URI "http://www.w3.org/2007/05/addressing/metadata"
> WS-Addressing 07/05 not working
> -------------------------------
>
> Key: CXF-6605
> URL: https://issues.apache.org/jira/browse/CXF-6605
> Project: CXF
> Issue Type: Bug
> Components: WS-* Components
> Affects Versions: 3.1.2
> Environment: Win 8, current Spring Boot, Embedded Tomcat
> Reporter: Stefan Kuhn
> Labels: easyfix
> Attachments: AddressingMetadataNamespaceFix.patch
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> using
> xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" instead of
> xmlns:wsam="http://www.w3.org/2007/02/addressing/metadata"
> invalidates valid WS requests.
> e.g. in my usecase, the WSDL uses
> <wsp:Policy wss:Id="WSAddressing_policy">
> <wsam:Addressing>
> <wsp:policy/>
> </wsam:Addressing>
> </wsp:Policy>
> and
> <wsdl:binding name="OrderManagementServiceOutboundBinding" type="tns:OrderManagementServiceOutboundPortType">
> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsp:PolicyReference URI="#WSAddressing_policy"/>
> Springs CXF configuration uses the policy interceptor with
> <cxf:bus>
> <cxf:features>
> <p:policies ignoreUnknownAssertions="true"/>
> <cxf:logging/>
> </cxf:features>
> </cxf:bus>
> and
> <jaxws:endpoint id="outboundService"
> publish="true"
> implementor="#outbound"
> address="/OrderManagementServiceOutbound"
> serviceName="s:OrderManagementServiceOutbound"
> endpointName="s:OrderManagementResponsePort"
> wsdlLocation="/wsdl/OrderManagementServiceOutbound.wsdl"
> xmlns:s="urn:OrderManagementServiceOutbound">
>
> <jaxws:properties>
> <entry key="faultStackTraceEnabled" value="${ws.stacktrace-enabled:false}" />
> <entry key="exceptionMessageCauseEnabled" value="${ws.exception-message-cause-enabled:false}" />
> <entry key="schema-validation-enabled" value="true" />
> </jaxws:properties>
>
> <jaxws:features>
> <cxf:logging />
> <wsa:addressing />
> </jaxws:features>
> </jaxws:endpoint>
> I've used CXF and SOAP-UI as a client for the server application, both successful for 2007/02, both unsuccessful for 2007/05.
> CXF replies to the same request with
> <soap:Fault>
> <faultcode xmlns:ns1="http://www.w3.org/2005/08/addressing">ns1:MessageAddressingHeaderRequired</faultcode>
> <faultstring>A required header representing a Message Addressing Property is not present</faultstring>
> </soap:Fault>
> It seems to me, that the qualified name of ADDRESSING_ASSERTION_QNAME_0705 is not added to the QName[] types in org.apache.cxf.ws.addressing.impl.MAPAggregatorImpl.assertAddressing(Message, EndpointReferenceType, EndpointReferenceType), Line 334.
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)