Hello everybody,

We are upgrading our system to CMIS 1.1, but we have still service consumers 
that uses CMIS 1.0.
I need to know the version of the client binding, and checking the code, the 4 
servlets declared in web.xml has the version as a parameter.

The ATOM servlet is getting the parameter properly and saving in the request 
scope, but the SOAP servlet that extends WSServlet class is not working like it 
should be.
Overwriting the service() method is not enough because the implementation of 
WSServlet is reading the file sun-jaxws.xml and registering on-the-fly new 
servlets with more concrete URL patterns.

For example:

Class

URL pattern



CmisWebServicesServlet

/services/*



Dynamic from WSServlet

/services/RepositoryService




The code of the class CmisWebServicesServlet.service() [...]  
request.setAttribute(CMIS_VERSION, cmisVersion); [...]
Is never executed and when the AbstractService.createContext() never reads the 
version.
[...] CmisVersion cmisVersion = (CmisVersion) 
request.getAttribute(CmisWebServicesServlet.CMIS_VERSION); [...]

I thought to create a customized listener to replace 
com.sun.xml.ws.transport.http.servlet.WSServletContextListener,
but this class is final.

any other suggestion?

Regards.

Jorge MARTIN CUERVO
[cid:image001.gif@01CCF6D0.4613B970]
European Commission
DG TRADE
Unit A4
CHAR 02/077
B-1049 Brussels/Belgium
+32 2 298 86 27
jorge.martin-cue...@ext.ec.europa.eu<mailto:jorge.martin-cue...@ext.ec.europa.eu>

Reply via email to