无法将web应用程序部署到debian虚拟服务器上的tomcat7

时间:2016-08-28 10:16:03

标签: maven tomcat servlets jersey tomcat7

我正在使用jersey编写简单的Java后端,我想将它部署到运行Debian的虚拟服务器上。我想,我已<Router routes={routes} history={browserHistory}/> tomcat7一起正确安装,并且还正确设置了用户角色(tomcat7-adminmanager-gui)。

当我访问manager-script时,我可以看到tomcat在运行。我也可以通过http://my-ip-address:8080访问管理器,所以我认为tomcat配置正确。

问题在于,当我想部署我的Web应用程序时(使用http://my-ip-address:8080/manager/html),部署本身并不起作用。这是来自maven的痕迹:

tomcat7-maven-plugin

以下是有关该事物的卡塔琳娜日志的内容:

[INFO] tomcatManager status code:200, ReasonPhrase:OK
[INFO] FAIL - Failed to deploy application at context path /parser
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 29.826s
[INFO] Finished at: Sun Aug 28 11:50:07 CEST 2016
[INFO] Final Memory: 40M/97M
[INFO] ------------------------------------------------------------------------

我不知道上面的错误意味着什么,因为我能够使用idea(而不是maven-tomcat-plugin)将此应用程序部署到我的本地tomcat。我会尝试提供所需数量的信息,因为我需要相当快速地解决这个问题。

我阅读了一些关于类似失败的线索,解决方法是将Aug 28, 2016 11:49:29 AM org.apache.catalina.util.LifecycleBase stop INFO: The stop() method was called on component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/parser]] after stop() had already been called. The second call will be ignored. Aug 28, 2016 11:49:30 AM org.apache.catalina.startup.HostConfig checkResources INFO: Undeploying context [/parser] Aug 28, 2016 11:50:06 AM org.apache.catalina.startup.HostConfig deployWAR INFO: Deploying web application archive /var/lib/tomcat7/webapps/parser.war Aug 28, 2016 11:50:07 AM org.apache.catalina.loader.WebappClassLoader validateJarFile INFO: validateJarFile(/var/lib/tomcat7/webapps/parser/WEB-INF/lib/tomcat-el-api-7.0.47.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/el/Expression.class Aug 28, 2016 11:50:07 AM org.apache.catalina.loader.WebappClassLoader validateJarFile INFO: validateJarFile(/var/lib/tomcat7/webapps/parser/WEB-INF/lib/tomcat-embed-core-7.0.47.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class Aug 28, 2016 11:50:07 AM org.apache.catalina.loader.WebappClassLoader validateJarFile INFO: validateJarFile(/var/lib/tomcat7/webapps/parser/WEB-INF/lib/tomcat-servlet-api-7.0.47.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class Aug 28, 2016 11:50:07 AM org.apache.catalina.startup.ContextConfig getServletContainerInitializer SEVERE: The ServletContentInitializer [org.apache.tomcat.websocket.server.WsSci] could not be created java.lang.ClassNotFoundException: org.apache.tomcat.websocket.server.WsSci at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:278) at org.apache.catalina.startup.ContextConfig.getServletContainerInitializer(ContextConfig.java:1620) at org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1530) at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1233) at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:855) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:346) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5209) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:963) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:537) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1468) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1436) at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:673) at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:431) at javax.servlet.http.HttpServlet.service(HttpServlet.java:644) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1003) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Aug 28, 2016 11:50:07 AM org.apache.catalina.startup.ContextConfig processServletContainerInitializers SEVERE: Failed to process JAR found at URL [jar:file:/var/lib/tomcat7/webapps/parser/WEB-INF/lib/tomcat-embed-core-7.0.47.jar!/] for ServletContainerInitializers for context with name [/parser] Aug 28, 2016 11:50:07 AM org.apache.catalina.startup.ContextConfig configureStart SEVERE: Marking this application unavailable due to previous error(s) Aug 28, 2016 11:50:07 AM org.apache.catalina.core.StandardContext startInternal SEVERE: Error getConfigured Aug 28, 2016 11:50:07 AM org.apache.catalina.core.StandardContext startInternal SEVERE: Context [/parser] startup failed due to previous errors 的范围设置为javax.servlet-api。在我的provided我没有这种依赖关系,因为pom.xml已经提供了它,所以我对如何解决这个问题没有其他想法。

这是我真正的pom:

jersey-servlet

你有任何想法,我该如何解决这个问题?

提前致谢

1 个答案:

答案 0 :(得分:1)

您应该在不依赖项的插件中有tomcat7-maven-plugin,请参阅usage页面。从依赖项中删除并尝试