Search code examples
javatomcat7warcatalina

Trying to start a war file - getting errors - need help understanding catalina.out


I apologize in advance - for what may be a common mistake, but after a couple of days of trying to figure it out... I think it appears that the war file wants a different java jdk... but I've tried now with this version below as well as openjdk 1.6 and 1.7.

Tomcat7 running on Wheezy. Here is my jdk version:

java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) Server VM (build 25.5-b02, mixed mode)

Here is my $JAVA_HOME:

/usr/local/java/jdk1.8.0_05

Here is my "catalina.out":

INFO: Deploying web application archive /var/lib/tomcat7/webapps/my_app.war
Jun 6, 2014 2:22:50 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/var/lib/tomcat7/webapps/my_app/WEB-INF/lib/javax.servlet-api-3.1.0.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
...
org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [com.myco.mydata.controller.ShowmydataController] for bean with name 'showmydataController' defined in file [/var/lib/tomcat7/webapps/my_app/WEB-INF/classes/com/myco/mydata/controller/ShowmydataController.class]: problem with class file or dependent class; nested exception is java.lang.UnsupportedClassVersionError: com/myco/mydata/controller/ShowmydataController : Unsupported major.minor version 51.0 (unable to load class com.myco.mydata.controller.ShowmydataController)
...
Caused by: java.lang.UnsupportedClassVersionError: com/myco/mydata/controller/ShowmydataController : Unsupported major.minor version 51.0 (unable to load class com.myco.mydata.controller.ShowmydataController)
...
org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [com.myco.mydata.controller.ShowmydataController] for bean with name 'showmydataController' defined in file [/var/lib/tomcat7/webapps/my_app/WEB-INF/classes/com/myco/mydata/controller/ShowmydataController.class]: problem with class file or dependent class; nested exception is java.lang.UnsupportedClassVersionError: com/myco/mydata/controller/ShowmydataController : Unsupported major.minor version 51.0 (unable to load class com.myco.mydata.controller.ShowmydataController)
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1330) ~[spring-beans-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:594) ~[spring-beans-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1396) ~[spring-beans-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:385) [spring-beans-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:354) [spring-beans-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:97) ~[spring-context-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:609) ~[spring-context-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464) ~[spring-context-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:403) ~[spring-web-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306) ~[spring-web-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106) ~[spring-web-4.0.5.RELEASE.jar:4.0.5.RELEASE]
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4790) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5284) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:963) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1600) ~[tomcat-catalina-7.0.28.jar:7.0.28]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.6.0_31]
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) ~[na:1.6.0_31]
    at java.util.concurrent.FutureTask.run(FutureTask.java:166) ~[na:1.6.0_31]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) ~[na:1.6.0_31]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) ~[na:1.6.0_31]
    at java.lang.Thread.run(Thread.java:701) ~[na:1.6.0_31]
...

And so-on.

Thanks in advance for your time and attention!


Solution

  • I may have resolved this issue.

    I installed openjdk 1.7. Then I edited /etc/init.d/tomcat7 and set JDK_DIRS="/usr/lib/jvm/java-1.7.0-openjdk-i386".

    Tomcat restarted successfully and the war file started... kindof... as the application was not fully working, but this is now the DEVs problem. It appears from the Tomcat/Java POV - this issue is resolved.