FUSE-ESB Embedded in Tomcat Won't Run
terrancecrow Jul 17, 2009 12:56 PMI followed the instructions to package FUSE-ESB as a war:
http://servicemix.apache.org/tomcat-integration.html
I tried to deploy it under Tomcat 5.5.23 running under Java 1.6.0 build 14 on CentOS 5. When I do, catalina.out shows these lines:
INFO: Deploying web application archive servicemix-web-3.4.0.2-fuse.war
Jul 17, 2009 2:04:13 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/usr/local/tomcat4/webapps/servicemix-web-3.4.0.2-fuse/WEB-INF/lib/geronimo-servlet_2.5_spec-1.1.2.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Jul 17, 2009 2:04:13 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/usr/local/tomcat4/webapps/servicemix-web-3.4.0.2-fuse/WEB-INF/lib/servlet-api-2.5-6.1.14.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: data/log/servicemix.log (No such file or directory)
at java.io.FileOutputStream.openAppend(Native Method)
...
The log catalina.2009-07-17.log contained these entries:
INFO: Deploying web application archive servicemix-web-3.4.0.2-fuse.war
Jul 17, 2009 2:04:13 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/usr/local/tomcat4/webapps/servicemix-web-3.4.0.2-fuse/WEB-INF/lib/geronimo-servlet_2.5_spec-1.1.2.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Jul 17, 2009 2:04:13 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/usr/local/tomcat4/webapps/servicemix-web-3.4.0.2-fuse/WEB-INF/lib/servlet-api-2.5-6.1.14.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Jul 17, 2009 2:04:22 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
...
I've tried FUSE-ESB 3.4.0.2 and 3.4.0.3, and I get the same errors.
I'm sure I've done this before, and it seemed to work fine. The error is early enough in the deployment process that ESB's log file isn't even created, so I can't check it for clues.
Tomcat runs under the user tomcat, and the error seemed to suggest permissions. I tried verifying tomcat's ownership on the entire directory tree (/usr/local/tomcat), but that didn't help. I tired chmod -R 775 * from within the tomcat directory and trying to redeploy the war. That didn't help. I tried running Tomcat as root, and I seemed to get farther, but I can't run Tomcat as root.
What am I missing?
Thanks in advance!