I am facing a problem while deploying a war on to tomcat instance,
Tomcat version details,
D:KiranKiranSoftwares DHWebserversapache-tomcat-7.0.63bin>version.bat Using CATALINA_BASE: "D:KiranKiranSoftwares DHWebserversapache-tomcat-7.0.63" Using CATALINA_HOME: "D:KiranKiranSoftwares DHWebserversapache-tomcat-7.0.63" Using CATALINA_TMPDIR: "D:KiranKiranSoftwares DHWebserversapache-tomcat-7.0.63temp" Using JRE_HOME: "C:Program FilesJavajdk1.7.0_07" Using CLASSPATH: "D:KiranKiranSoftwares DHWebserversapache-tomcat-7.0.63binbootstrap.jar;D:KiranKiranSoftwares DHWebserversapache-to mcat-7.0.63bintomcat-juli.jar" Server version: Apache Tomcat/7.0.63 Server built: Jun 30 2015 08:08:33 UTC Server number: 7.0.63.0 OS Name: Windows 7 OS Version: 6.1 Architecture: amd64 JVM Version: 1.7.0_07-b11 JVM Vendor: Oracle Corporation D:KiranKiranSoftwares DHWebserversapache-tomcat-7.0.63bin>
POM Dependency :
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency>
I have created a war using maven plugin and tried to deploy on tomcat 7. I was able to deploy but unable to start the webapp. When I find the logs for it, it gave below stacktrace,
SEVERE: Error during ServletContainerInitializer processing javax.servlet.ServletException: Not running on Jetty, JSR-356 support unavailable at org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer.onStartup(WebSocketServerContainerInitializer.java:146) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5520) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1322) at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:694) at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:217) at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
Any help would be appreciated. Thank you.
Edit :
It runs fine when I run the application using STS
Advertisement
Answer
The problem is identified to be confusion over the websocket jars of tomcat and my application jars. I have removed it from the war file and it started working,
I used maven plug in to remove the jars as below,
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <packagingExcludes>WEB-INF/lib/websocket-*.jar</packagingExcludes> </configuration> </plugin>
The jars which were creating problem are,