WS-Addressing Specification

Hi Guys,

We have implemented the WS-Addressing Spec in one of our custom wsdls, [URL=“http://schemas.xmlsoap.org/ws/2004/08/addressing”]http://schemas.xmlsoap.org/ws/2004/08/addressing[/URL], and I’m having problems with 3 of these industry standard attributes. They are:

<xs:element name=“MessageID” type=“wsa:AttributedURI” />

 <xs:element name="[B]To[/b]" type="[B]wsa:AttributedURI[/b]" /> 

<xs:element name="[B]Action[/b]" type="[B]wsa:AttributedURI[/b]"  /> 

When I imported our wsdl, Developer converted these attributes to document types with key/value pairs as inputs, however in our implementation, we only have a value like a simple string attribute

Example:
<wsa:To soapenv:actor=“http://schemas.xmlsoap.org/soap/actor/next” soapenv:mustUnderstand=“0” xmlns:wsa=“http://schemas.xmlsoap.org/ws/2004/08/addressing”>soap://com/autotrader/services/customer/getListingDealerById/v1</wsa:To>


<wsa:Action soapenv:actor=“http://schemas.xmlsoap.org/soap/actor/next” soapenv:mustUnderstand=“0” xmlns:wsa=“http://schemas.xmlsoap.org/ws/2004/08/addressing”>soap://com/autotrader/services/customer/getListingDealerById/v1</wsa:Action>


<wsa:MessageID soapenv:actor=“http://schemas.xmlsoap.org/soap/actor/next” soapenv:mustUnderstand=“0” xmlns:wsa=“http://schemas.xmlsoap.org/ws/2004/08/addressing”>soap://af4e8440-7279-11dc-9151-00188bd06ee5</wsa:MessageID>

which post correctly to our wsdl using SOAPUI…

however, developer creates these attributes like this:

<wsa:To xmlns:wsa=“http://schemas.xmlsoap.org/ws/2004/08/addressing” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
wsa:Tosoap://com/autotrader/services/customer/getListingDealerById/v1</wsa:To>
</wsa:To>
<wsa:Action xmlns:wsa=“http://schemas.xmlsoap.org/ws/2004/08/addressing” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
wsa:Actionsoap://com/autotrader/services/customer/getListingDealerById/v1</wsa:Action>
</wsa:Action>
<wsa:MessageID xmlns:wsa=“http://schemas.xmlsoap.org/ws/2004/08/addressing” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
wsa:MessageIDsoap://af4e8440-7279-11dc-9151-00188bd06ee5</wsa:MessageID>
</wsa:MessageID>

Is anyone aware of how to implement these attributes correctly in Developer 7.1?

Can anyone verify that the WS-Addressing Spec is support by webMethods 7.1?

What do you mean by “implemented the WS-Addressing Spec in one of our custom wsdls”? A WSDL is not an implementation, but rather an interface description or contract.

As far as the IS 7.1 web services support, I believe the WS-Addressing header block would be considered a custom header. If you need IS to actually process it to do anything useful, I believe you would have to code a custom JAX-RPC handler, but you should check the IS 7.1.x Web Services Developer’s Guide and SOAP Developer’s Guide documents for details on what the new WSD nodes support.

Mark

What do you mean by supported?

Agreed. A wsdl is a interface not an implementation.

However it appears that webMethods incorrectly creates a doc type for the AttributedURI element instead of a simple string type when importing our wsdl so we “hacked up” our wsdl to use a String element instead of AttributedURI, and the import was successful as well as running a test message through Developer to call a remote web service.

I’m not sure if the WS-Addressing spec is supported by webMethods yet, but I do have a SR open with them to find out.