Package: tomcat7
Version: 7.0.23-1
Severity: normal
Dear Maintainer,
In tomcat6 (version 6.0.32-7), I was able to place the following XML file in
/etc/tomcat6/Catalina/localhost:
Context path=/solr docBase=/usr/opt/solr/apache-solr-3.3.0.war
debug=0 privileged=true allowLinking=true crossContext=true
!-- make symlinks work in Tomcat --
Resources className=org.apache.naming.resources.FileDirContext
allowLinking=true /
Environment name=solr/home type=java.lang.String
value=/usr/opt/solr/home/solr override=true /
/Context
However when trying this with tomcat7 (placing the file in
/etc/tomcat7/Catalina/localhost) I receive the error pasted in bellow.
If I manually explode the WAR file into a folder, and set that folder as my
docBase I do not receive the error and the application behaves as expected.
I haven't tweaked anything in /etc/tomcat7 other than as described above (well,
I did after I received the error, but not before).
I have modified /etc/defaults/tomcat7 to set JAVA_HOME to
/usr/lib/jvm/java-7-openjdk-amd64.
I wasn't able to find anything in the upstream release-notes making reference
to this, but I didn't spend a lot of time on it.
The upstream documentation for the Context element seems to state that a WAR
file is allowed in this attribute:
http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Common_Attributes
Needing to manually explode WAR files will complicate the automated deployment
of web-apps.
I don't see any obviously related bugs filed against tomcat 7 in the tomcat
project Bugzilla.
Error in /var/log/tomcat7/catalina.out:
INFO: Starting service Catalina
Dec 08, 2011 2:24:35 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.23
Dec 08, 2011 2:24:35 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor
/etc/tomcat7/Catalina/localhost/host-manager.xml
Dec 08, 2011 2:24:36 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor
/etc/tomcat7/Catalina/localhost/manager.xml
Dec 08, 2011 2:24:36 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor
/etc/tomcat7/Catalina/localhost/solr.xml
Dec 08, 2011 2:24:36 PM org.apache.catalina.startup.SetContextPropertiesRule
begin
WARNING: [SetContextPropertiesRule]{Context} Setting property 'debug' to '0'
did not find a matching property.
Dec 08, 2011 2:24:36 PM org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Document base
/usr/opt/solr/apache-solr-3.3.0.war does not exist or is not a readable
directory
at
org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:140)
at
org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4880)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5060)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:866)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:842)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:649)
at
org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1581)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Dec 08, 2011 2:24:36 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error in resourceStart()
Dec 08, 2011 2:24:36 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error getConfigured
Dec 08, 2011 2:24:36 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/solr] startup failed due to previous errors
Dec 08, 2011 2:24:36 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /var/lib/tomcat7/webapps/ROOT
Dec 08, 2011 2:24:37 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [http-bio-8080]
Dec 08, 2011 2:24:37 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 1530 ms
Info for war file:
$ stat /usr/opt/solr/apache-solr-3.3.0.war
File: `/usr/opt/solr/apache-solr-3.3.0.war'
Size: 7451862 Blocks: 14560 IO Block: 4096 regular file
Device: fe00h/65024dInode: 281761 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 113/ tomcat7)