【问题标题】:WAR file won't start on Tomcat 7WAR 文件不会在 Tomcat 7 上启动
【发布时间】:2011-12-21 16:13:17
【问题描述】:

我有一个 WAR 文件,已通过 Web 管理器部署到 Tomcat 7.0.23。但是,当我尝试启动它时,出现以下错误。不确定是什么原因造成的。我正在使用 JDK 1.6.0_27。我还在尝试在 Tomcat 上运行的应用程序使用最新版本的 Spring MVC,并且我使用的是 Windows 7 64 位。

Dec 21, 2011 10:41:43 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error filterStart
Dec 21, 2011 10:41:43 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/upload] startup failed due to previous errors

编辑:好的,所以我设置了 logj4 并将其设置为 DEBUG,它告诉我在 characterEncodingFilter 上引发了异常。下面是我的 web.xml 中用于 characterEncodingFilter 的代码。

<filter>
    <filter-name>characterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>

<filter-mapping>
    <filter-name>characterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

编辑:这是我看到记录的新错误的顶部:

2011-12-21 12:43:56,279 [http-apr-8080-exec-5] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/upload]- Exception starting filter characterEncodingFilter
java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
        at org.springframework.web.filter.GenericFilterBean.<init>(GenericFilterBean.java:82)

Full log

【问题讨论】:

  • 日志中有什么内容吗?在此期间,您是否已将日志记录到 DEBUG?显然,从您提供的信息来看,这将无法提供帮助。我的第一个怀疑是配置文件错误或缺少依赖项。
  • 您可以检查映射到/upload 的代码启动时会发生什么。顺便说一句,当您手动部署它时它是否有效.. 只是为了将 Tomcat 管理器排除在外。
  • 好吧,Filter 启动失败。当 Tomcat 尝试加载/构造/初始化它时,它引发了异常。根据目前提供的信息,这就是所有可以说的。真正的答案是在抛出异常的堆栈跟踪中。检查 Tomcat 日志文件。
  • 这就是 Catalina.log 中的全部内容:http://pastebin.com/PEWKdWz9
  • 我设置了 log4j 并将其设置为 DEBUG,这就是我得到的:http://pastebin.com/J9EkYEsq

标签: spring-mvc war tomcat7 tomcat


【解决方案1】:

您的类路径中似乎缺少 Apache Commons Logging。是否捆绑在war文件中?

【讨论】:

  • 谢谢。这似乎已经解决了无法启动的问题,但现在无论出于何种原因,我都会收到 404 错误。
猜你喜欢
  • 2013-10-25
  • 1970-01-01
  • 2013-07-28
  • 1970-01-01
  • 2021-09-12
  • 1970-01-01
  • 2011-07-03
  • 1970-01-01
相关资源
最近更新 更多