cancel
Showing results for 
Search instead for 
Did you mean: 

Issue with WS-I compliance of WSDL in SOAP UI

Former Member
0 Kudos

Hi,

I am facing this issue and am unable to figure out a workaround for this.

I have SOAP to Proxy scenario.

In ESR we have used a DTD (doctype) definition to create message structure. It is very large and complex DTD.

In this DTD the namespace is not declared (which I think not required as well in general).

ID is configured properly and it is working fine end to end when testing with SOAP UI.

The issue is when I expose the Webservice to third party they cant import WSDL citing non-compliance to WS-I.

I too checked compliance in SOAP UI and as it turns out that it is not compliant.

I investigated the issue and found that its all because of missing field targetNamespace in <xsd:schema>.

I think it is because the namespace has not been declared in DTD.

Can someone please help with below things:

i) Making it WS-I compliant without adding namespace. (which i think it is not possible)

ii) If I add namespace in WSDL, what should be its value? Namespace where DTD resides in ESR? or there is someother value.

iii) Will this modified WSDL still work after manual changes ? As WSDLs is not editable in sender agreement.

iv) Is xmlAnonymizerbean any help here ?

v) If Needed how to declare and add namespace in a DTD. Will adding namespace in DTD, impact message mapping ?

Let me know if you want any information on this.

PFB the structure for your reference.

<wsdl:definitions name="SI_abc_OUT_Sync" targetNamespace="urn:abc:POD" xmlns:p1="urn:abc:POD" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

   <wsdl:types>

      <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">   --------> here a field targetNamespace must be present which is not defined in DTD.

<xsd:element name.......

               ...

               ......

               ...

               ......

</xsd:schema>

...

....

.

.

.

Accepted Solutions (0)

Answers (1)

Answers (1)

0 Kudos

Expose the WSDL from Sender Agreement or Inbound Processing in the ICO and test accordingly with SOAPUI.

In case still you are getting the error in the sense you can prefer XMLAnonymizer bean or play with the namespaces you may have to go with the JAVA or XSLT mapping.