WSDL using SOAP-msg

Hi,

As specified in the documentation if we want to generate a WSDL (SOAP-msg style) then if we specify two parameters as false i.e.
watt.server.wsdl.enforceSOAPMsgPartNS=false
watt.server.SOAP.enforceMsgPartNS=false
we can use IS docuents as input to that service without writing a custom SOAP processor.

But that gives an error saying that the input parameters not resolved when we use the WSDL for calling that webservice.

Jigar,

Those parameters may be appropriate for your organization if you want to be able to ignore the soap spec’s requirement to namespace-qualify soap message parts (header and body elements), but could certainly lead to interoperability issues since you are by definition bypassing part of the spec.

These parameters, however, are by no means required to generate soap-msg WSDL files from Developer nor to consume external soap-msg or document/literal style web services.

When is your external soap client receiving an error message? When it is attempting to generate code to invoke the service from the WSDL or when it is attempting to invoke the web service? What is the exact message that is being received? Have you captured the soap request message to see that the client is sending the right message?

Mark

I have attached herewitht the wsdl generated and we are only testing it and we are getting an error message while creating code from wsdl and the error message given is as follows:

“Error: Problem with /wsdl:definitions/wsdl:message[1]/wsdl: part[1]. WSDLException (at /wsdl:definitions/wsdl:message[1]/wsdl: part[1]): faultCode=INVALID_WSDL: Unable to determine namespace of ‘Name’.”
abc.wsdl (2 KB)

Set the watt.server.wsdl.enforceSOAPMsgPartNS parameter back to “true” and regenerate your WSDL.

I believe that your soap client is rejecting the WSDL because it does not specify namespaces for the message parts.

It (correctly) expects soap message parts to be namespace-qualified. I would also set the watt.server.SOAP.enforceMsgPartNS parameter back to “true” although I don’t think it affects WSDL generation.

I’m sure there was a reason that someone thought these parameters were necessary back in the day, but I can’t for the life of me think of what it would be.

Mark