JAX-WS Bindings
The Nuxeo Platform includes a JAX-WS compliant implementation to expose SOAP based web services. Sun JAX-WS (Metro) is used.
As explained earlier in these pages, JAX-WS is not the preferred way to expose web services on top of Nuxeo Platform. This is the reason why the default distributions don't expose a lot of SOAP based web services. By default, the exposed SOAP web services include:
- A read only access to the Document Repository and the User Manager (NuxeoRemoting),
- A read only access to the Audit trail (NuxeoAudit),
- The CMIS bindings.
If you want to access the SOAP web service:
To list all the deployed endpoints:
http://server:port/nuxeo/webservices/nuxeoremoting
to list all the deployed endpoints (when using SUN Metro),http://server:port/jbossws/services
(when using JbossWS),
- To access NuxeoRemoting WSDL:
http://server:port/nuxeo/webservices/nuxeoremoting?wsdl
- To access NuxeoAudit WSDL:
http://server:port/nuxeo/webservices/nuxeoaudit?wsdl
.
The point of SOAP web services is not to have a 1 to 1 mapping with the Java services interfaces. The goal is to provide a "coarse grained" high level API. So it's easy to build new SOAP based web services on top of Nuxeo:
- The JAX-WS infrastructure is already there,
- The authentication system is already in place,
- We provide the base class to manage Repository and security (AbstractNuxeoWebService),
- We already provide JAXB objects for Documents, Security descriptors, properties ...
You can find a step-by-step example on the page Building a SOAP-Based WebService in the Nuxeo Platform.
You might also want to build a web service client in Nuxeo to be able to query a remote web service. A simple example is available on the page Building a SOAP-Based WebService Client in Nuxeo.