These components use the JAX-WS API to make a web service client invocation or to host a Java based web service and expose it over multiple protocols. We currently test against the JAX-WS RI though will soon be also testing against Celtix as well.
Making a web service invocation through JBI
The JBI binding for JAX-WS allows a the JAX-WS API to be used to invoke a web service from a JBI message. i.e. to use JAX-WS to act as a web service client. The following example shows how to configure a service as a JAX-WS client.
Wiki Markup |
---|
{snippet:id=jaxws|lang=xml|url=http://cvs.servicemix.codehaus.org/*checkout*/servicemix/components/jaxws/src/test/resources/org/servicemix/components/jaxws/example.xml?rev=HEAD} |
All that is required really is to point at the WSDL for the service and the client is automatically generated. The above assumes the WSDL has only a single port available; if a WSDL exposes multiple ports then you need to also supply the port QName.
Hosting a JAX-WS service inside ServiceMix
The other option is to host an actual Java and JAX-WS based web service implementation inside ServiceMix and expose it as an endpoint over one or more transport protocols.
TODO...