<cxf:jaxws-service ... >
<cxf:features>
<wsa:addressing />
</cxf:features>
</cxf:jaxws-service/>
Enabling WS-Addressing
Mule Runtime Engine versions 3.5, 3.6, and 3.7 reached End of Life on or before January 25, 2020. For more information, contact your Customer Success Manager to determine how you can migrate to the latest Mule version. |
CXF supports the 2004-08 and 1.0 versions of WS-Addressing. To enable WS-Addressing on your services, you must configure the CXF service to use the WS-Adressing feature:
This works with clients as well:
<cxf:jaxws-client ... >
<cxf:features>
<wsa:addressing />
</cxf:features>
</cxf:jaxws-client/>
Enabling WS-Addressing Globally
To enable WS-Addressing globally, there are two steps. First, create an external configuration file with the following:
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:cxf="http://cxf.apache.org/core"
xmlns:wsa="http://cxf.apache.org/ws/addressing"
xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
xsi:schemaLocation="
http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<cxf:bus>
<cxf:features>
<wsa:addressing/>
</cxf:features>
</cxf:bus>
</beans>
Second, you’ll need to tell the CXF module to use this configuration file:
<mule xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:spring="http://www.springframework.org/schema/beans"
xmlns:quartz="http://www.mulesoft.org/schema/mule/quartz"
xmlns:cxf="http://www.mulesoft.org/schema/mule/cxf"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/3.1/mule.xsd
http://www.mulesoft.org/schema/mule/cxf http://www.mulesoft.org/schema/mule/cxf/3.1/mule-cxf.xsd
http://www.mulesoft.org/schema/mule/quartz http://www.mulesoft.org/schema/mule/quartz/3.1/mule-quartz.xsd">
<cxf:configuration configurationLocation="myConfig.xml"/>
...
</mule>
Asynchronous Reply To Destinations
To set up an asynchronous reply to destination for you client, you can set the "decoupledEndpoint" attribute property on your client message processor.
<cxf:jaxws-client ... decoupledEndpoint="http://localhost:8888/myReplydestination">
<cxf:features>
<wsa:addressing />
</cxf:features>
</cxf:jaxws-client/>
The URL in the decoupledEndpoint property will be used as your reply to destination for all messages.