You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@chemistry.apache.org by Uwe Geisert <ug...@opentext.com> on 2018/07/02 11:07:59 UTC

Cannot find file '/WEB-INF/cmis10/CMISWS-Service.wsdl.template'

Hi Florian,

Hope you are well!

We are developing a spring boot application with a CMIS interface.
Browser and atom bindings work fine so far.

But WS binding has an issue:

2018-07-02 12:35:48.712+0200 [] [http-nio-8080-exec-2] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[cmisWebServicesServlet] - log: Allocate exception for servlet [cmisWebServicesServlet]
javax.servlet.ServletException: Cannot find file '/WEB-INF/cmis10/CMISWS-Service.wsdl.template'!
                at org.apache.chemistry.opencmis.server.impl.webservices.CmisWebServicesServlet.readFile(CmisWebServicesServlet.java:131)
                at org.apache.chemistry.opencmis.server.impl.webservices.CmisWebServicesServlet.init(CmisWebServicesServlet.java:108)
                at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1144)
                at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:789)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
                at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:677)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
                at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
                at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
                at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
                at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
                at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
                at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
                at java.lang.Thread.run(Thread.java:748)

The spring boot application contains these chemistry libraries:
BOOT-INF/lib/chemistry-opencmis-server-bindings-war-1.1.0.war
BOOT-INF/lib/chemistry-opencmis-server-async-1.1.0.jar
BOOT-INF/lib/chemistry-opencmis-server-bindings-1.1.0.jar
BOOT-INF/lib/chemistry-opencmis-server-support-1.1.0.jar
BOOT-INF/lib/chemistry-opencmis-commons-impl-1.1.0.jar
BOOT-INF/lib/chemistry-opencmis-commons-api-1.1.0.jar

As far as I have debugged this, CmisWebServicesServlet.readFile() uses ServletContext.getResourceAsStream(), which in turn, via org.apache.catalina.webresources.DirResourceSet.getResource(String), looks in temporary docbase (e.g. /tmp/tomcat-docbase.7280448334050881967.8080) which is empty.

Do you have some advice how to  resolve this?

Thanks!
Uwe

RE: [EXTERNAL] - Re: Cannot find file '/WEB-INF/cmis10/CMISWS-Service.wsdl.template'

Posted by Uwe Geisert <ug...@opentext.com>.
Hi Florian,

I would not expect a configuration for the location.
But I think the templates are at the correct place:
   my-app-0.1.2-SNAPSHOT.jar\BOOT-INF\lib\chemistry-opencmis-server-bindings-war-1.1.0.war\WEB-INF\cmis10\ 
and 
   my-app-0.1.2-SNAPSHOT.jar\BOOT-INF\lib\chemistry-opencmis-server-bindings-war-1.1.0.war\WEB-INF\cmis11\
contain CMISWS-Service.wsdl.template etc.

I was suspicious of the .war file included in the boot app. So I added the templates to another jar:
   my-app-0.1.2-SNAPSHOT.jar\BOOT-INF\lib\xecm-cmis-0.1.1-SNAPSHOT.jar\WEB-INF\cmis10\ 
   my-app-0.1.2-SNAPSHOT.jar\BOOT-INF\lib\xecm-cmis-0.1.1-SNAPSHOT.jar\WEB-INF\cmis11\
But to no avail.

Where should they be???

Thanks
Uwe


-----Original Message-----
From: Florian Müller [mailto:fmui@apache.org] 
Sent: Dienstag, 3. Juli 2018 09:59
To: dev@chemistry.apache.org
Cc: Uwe Geisert <ug...@opentext.com>
Subject: [EXTERNAL] - Re: Cannot find file '/WEB-INF/cmis10/CMISWS-Service.wsdl.template'

Hi Uwe,

The servlet expects the template files in the servlet context. It doesn't look into the class path.
There is currently no way to configure that. Sorry. You have to put the template files into the right place.

You can also open an issue and wait for the next release...


- Florian


> Hi Florian,
> 
> Hope you are well!
> 
> We are developing a spring boot application with a CMIS interface.
> Browser and atom bindings work fine so far.
> 
> But WS binding has an issue:
> 
> 2018-07-02 12:35:48.712+0200 [] [http-nio-8080-exec-2] ERROR 
> org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[cmisW
> ebServicesServlet]
> - log: Allocate exception for servlet [cmisWebServicesServlet]
> javax.servlet.ServletException: Cannot find file 
> '/WEB-INF/cmis10/CMISWS-Service.wsdl.template'!
>                 at
> org.apache.chemistry.opencmis.server.impl.webservices.CmisWebServicesServlet.readFile(CmisWebServicesServlet.java:131)
>                 at
> org.apache.chemistry.opencmis.server.impl.webservices.CmisWebServicesServlet.init(CmisWebServicesServlet.java:108)
>                 at
> org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1144)
>                 at
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:789)
>                 at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)
>                 at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
>                 at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
>                 at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
>                 at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
>                 at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
>                 at
> org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:677)
>                 at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
>                 at
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
>                 at
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
>                 at
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
>                 at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
>                 at
> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>                 at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>                 at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>                 at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>                 at java.lang.Thread.run(Thread.java:748)
> 
> The spring boot application contains these chemistry libraries:
> BOOT-INF/lib/chemistry-opencmis-server-bindings-war-1.1.0.war
> BOOT-INF/lib/chemistry-opencmis-server-async-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-server-bindings-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-server-support-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-commons-impl-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-commons-api-1.1.0.jar
> 
> As far as I have debugged this, CmisWebServicesServlet.readFile() uses 
> ServletContext.getResourceAsStream(), which in turn, via 
> org.apache.catalina.webresources.DirResourceSet.getResource(String),
> looks in temporary docbase (e.g.
> /tmp/tomcat-docbase.7280448334050881967.8080) which is empty.
> 
> Do you have some advice how to  resolve this?
> 
> Thanks!
> Uwe

Re: Cannot find file '/WEB-INF/cmis10/CMISWS-Service.wsdl.template'

Posted by Florian Müller <fm...@apache.org>.
Hi Uwe,

The servlet expects the template files in the servlet context. It 
doesn't look into the class path.
There is currently no way to configure that. Sorry. You have to put the 
template files into the right place.

You can also open an issue and wait for the next release...


- Florian


> Hi Florian,
> 
> Hope you are well!
> 
> We are developing a spring boot application with a CMIS interface.
> Browser and atom bindings work fine so far.
> 
> But WS binding has an issue:
> 
> 2018-07-02 12:35:48.712+0200 [] [http-nio-8080-exec-2] ERROR
> org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[cmisWebServicesServlet]
> - log: Allocate exception for servlet [cmisWebServicesServlet]
> javax.servlet.ServletException: Cannot find file
> '/WEB-INF/cmis10/CMISWS-Service.wsdl.template'!
>                 at
> org.apache.chemistry.opencmis.server.impl.webservices.CmisWebServicesServlet.readFile(CmisWebServicesServlet.java:131)
>                 at
> org.apache.chemistry.opencmis.server.impl.webservices.CmisWebServicesServlet.init(CmisWebServicesServlet.java:108)
>                 at
> org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1144)
>                 at
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:789)
>                 at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)
>                 at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
>                 at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
>                 at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
>                 at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
>                 at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
>                 at
> org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:677)
>                 at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
>                 at
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
>                 at
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
>                 at
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
>                 at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
>                 at
> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>                 at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>                 at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>                 at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>                 at java.lang.Thread.run(Thread.java:748)
> 
> The spring boot application contains these chemistry libraries:
> BOOT-INF/lib/chemistry-opencmis-server-bindings-war-1.1.0.war
> BOOT-INF/lib/chemistry-opencmis-server-async-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-server-bindings-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-server-support-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-commons-impl-1.1.0.jar
> BOOT-INF/lib/chemistry-opencmis-commons-api-1.1.0.jar
> 
> As far as I have debugged this, CmisWebServicesServlet.readFile() uses
> ServletContext.getResourceAsStream(), which in turn, via
> org.apache.catalina.webresources.DirResourceSet.getResource(String),
> looks in temporary docbase (e.g.
> /tmp/tomcat-docbase.7280448334050881967.8080) which is empty.
> 
> Do you have some advice how to  resolve this?
> 
> Thanks!
> Uwe