当前位置: 首页 > 面试题库 >

在Tomcat 5.5中部署Web应用时如何解决Error listenerStart?

甘君之
2023-03-14
问题内容

我已经将使用Spring和Hibernate的Apache Wicket Web应用程序部署到了我的Tomcat 5.5实例。当我导航到Tomcat Manager界面时,我看到我部署的Web应用程序未运行。当我按“开始”时,出现以下错误信息;“失败-无法启动上下文路径/ spaghetti中的应用程序”。

我的catalina.log包含以下内容:

Apr 15, 2019 1:51:22 AM org.apache.catalina.loader.WebappClassLoader validateJarFile  
INFO: validateJarFile(/var/lib/tomcat5.5/webapps/spaghetti/WEB-INF/lib/jsp-api-6.0.16.jar)   - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/jsp/JspPage.class  
Apr 15, 2019 1:51:22 AM org.apache.catalina.loader.WebappClassLoader validateJarFile  
INFO: validateJarFile(/var/lib/tomcat5.5/webapps/spaghetti/WEB-INF/lib/servlet-api-6.0.16.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class  
Apr 15, 2019 1:51:24 AM org.apache.catalina.core.StandardContext start  
SEVERE: Error listenerStart  
Apr 15, 2019 1:51:24 AM org.apache.catalina.core.StandardContext start  
SEVERE: Context [/spaghetti] startup failed due to previous errors

Excerpt from web.xml:

<listener>
    <listener-class>
        org.springframework.web.context.ContextLoaderListener
    </listener-class>
</listener>

任何帮助是极大的赞赏。


问题答案:
/var/lib/tomcat5.5/webapps/spaghetti/WEB-INF/lib/jsp-api-6.0.16.jar
/var/lib/tomcat5.5/webapps/spaghetti/WEB-INF/lib/servlet-api-6.0.16.jar

你应该不会有在任何服务器专用库/WEB-INF/lib。将它们保留在应用服务器自己的库中。这只会导致类路径冲突。摆脱中的所有所有特定于应用程序服务器的库/WEB-INF/libJRE/lib以及JRE/lib/ext如果其中已放置了库中的任何库)。

特定于appserver的库包含在webapp的库中的一个常见原因是,javax.servlet入门者认为这是修复无法解析的类等其他编译错误的正确方法。将它们放在webapp的库中是错误的解决方案。你应在编译期间(例如,javac -cp /path/to/server/lib/servlet.jar依此类推)在类路径中引用它们,或者,如果你使用的是IDE,则应将服务器集成到IDE中并将Web项目与服务器关联。然后,IDE将自动在webapp项目的类路径(buildpath)中获取服务器特定的库。



 类似资料:
  • 我想在服务器上部署一个spring mvc中的Java web app build。我使用的是MilesWeb服务器。在尝试将应用程序部署到服务器后,我收到了以下异常日志,描述如下:“服务器遇到内部错误,导致无法满足此请求”。我需要帮助来找出我做错了什么。 你可以检查这个链接后,点击提交我得到上面的错误

  • 我想在tomcat Embbed服务器上部署一个web应用,我从maven:My rest endpoint: 和maven设置: 执行和之后的后,我收到war tomcat已启动的消息,但当我输入localhost:8080/test时,我不断收到404 Not Fount Http响应。我可能做错了什么?我应该在网络中添加一些映射吗。xml? tomcat上的日志显示我确实部署了我的应用程序:

  • 当一个 Web 应用程序部署到容器中,在 Web 应用程序开始处理客户端请求之前,必须按照下述步骤顺序执行。 实例化部署描述文件中<listener>元素标识的每个事件监听器的一个实例。 对于已实例化的实现了 ServletContextListener 接口的监听器实例,调用 contextInitialized() 方法。 实例化部署描述文件中<filter>元素标识的每个过滤器的一个实例,并

  • 我正在尝试部署一个简单的Spring Boot应用程序,它将公开一些rest api,并且我使用hibernate实体管理器来操作实体对象。当我尝试将此应用程序部署到Oracle WebLogic12c时,遇到以下异常: 简而言之,我得到了 PS:该项目在Tomcat8中运行良好。

  • 我试图使用FTP在Azure Web应用程序服务上部署战争文件。但我没有看到webapps文件夹下的站点/www. root在许多教程中提到。我选择了网络服务器作为tomcat。我看到旧portal.when教程我从新门户创建它,我没有看到webapps文件夹

  • 问题内容: 我使用Spark Web框架创建了一个Web应用程序,但是我不知道如何部署该Web应用程序。很抱歉,如果这是非常基本的内容,但我是Spark框架的新手,找不到任何指导我如何部署Spark WebApp的文档。 如何独立部署Spark WebApp 如何构建spark webapp(用于war文件或此类文件)以及如何通过Web服务器(jetty或Tomcat)进行部署。 问题答案: 首先