I am wondering if Mule will create a wsdl on a http endpoint so I can access it through soapUI. I am passing in xml with a soap envelope, like what follows. I don’t have a wsdl created, but I have a flow afterwards to read and use this xml being passed in. I know with other ESB tools it’s possible to say this endpoint needs to expose a wsdl, and it’ll create one for you on build. Does mule do anything like this?
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<lookup>
<bookid>0028634748</bookid>
</lookup>
</soapenv:Body>
Thanks for your time.
Mule can generate a WSDL on-the-fly but it needs something to infer the WSDL from. It can be done from a pure POJO component without any need for JAX-WS annotations and is configured like this:
With the following interface:
and implementation:
The problem is that the WSDL will not conform to the expected message above, you end up with messages like this:
If you want stricter control on the generated WSDL you’ll have to use JAX-WS / JAXB annotations.