jackrabbit-webapp-2.10.1.war on tomcat7

720 views Asked by At

I am having an issue deploying jackrabbit-webapp-2.10.1.war on tomcat7 (pls see the trace below). I didn't have any problems deploying jackrabbit-webapp-2.10.1.war on tomcat6 nor deploying jackrabbit-webapp-2.8.1.war on tomcat7 (but probably because 2.8.1 does not contain protectedHandlers.properties in web.xml).

The class protectedHandlers.properties points to can be found in jackrabits' lib - any ideas?

L

015-06-19 17:47:09.095 ERROR [localhost-startStop-1] ProtectedRemoveManager.java:97 /WEB-INF/protectedHandlers.properties java.lang.ClassNotFoundException: /WEB-INF/protectedHandlers.properties at java.lang.Class.forName0(Native Method) ~[na:1.7.0_79] at java.lang.Class.forName(Class.java:191) ~[na:1.7.0_79] at org.apache.jackrabbit.server.remoting.davex.ProtectedRemoveManager.createHandler(ProtectedRemoveManager.java:91) [jackrabbit-jcr-server-2.10.1.jar:na] at org.apache.jackrabbit.server.remoting.davex.ProtectedRemoveManager.(ProtectedRemoveManager.java:63) [jackrabbit-jcr-server-2.10.1.jar:na] at org.apache.jackrabbit.server.remoting.davex.JcrRemotingServlet.init(JcrRemotingServlet.java:275) [jackrabbit-jcr-server-2.10.1.jar:na] at javax.servlet.GenericServlet.init(GenericServlet.java:158) [servlet-api.jar:3.0.FR] at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284) [catalina.jar:7.0.62] at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197) [catalina.jar:7.0.62] at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1087) [catalina.jar:7.0.62] at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5266) [catalina.jar:7.0.62] at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5554) [catalina.jar:7.0.62] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [catalina.jar:7.0.62] at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) [catalina.jar:7.0.62]

1

There are 1 answers

0
Bernd Eilers On

ClassLoader mechanisms have changed in tomcat7.

Go to apache-tomcat-7/webapps/jackrabbit-local-entw/WEB-INF and copy or move batchread.properties protectedHandlers.properties to the classes/ subdirectory

than edit web.xml and change

        <param-value>/WEB-INF/batchread.properties</param-value>

to

        <param-value>/batchread.properties</param-value>

and

      <param-value>/WEB-INF/protectedHandlers.properties</param-value>

to

      <param-value>/protectedHandlers.properties</param-value>

after restarting tomcat the error will go away.

This is how to do it manually for something to integrate into a deployment process I for example use Maven with the maven-war-plugin and configure a pom.xml to create my own war file as a war overlay to the jackrabbit-webapp-2.10.1.war and package a web.xml changed accordingly and a batchread.properties and protectedHandlers.properties at new location there.