【问题标题】:Cannot invoke Tomcat manager: FAIL - Deployed application at context path but context failed to start无法调用 Tomcat 管理器:失败 - 在上下文路径部署应用程序但上下文无法启动
【发布时间】:2013-06-13 06:17:09
【问题描述】:

当我尝试使用 Tomcat 7 和 Maven 部署 Spring 应用程序时出现此错误:

无法调用 Tomcat 管理器:失败 - 已在上下文中部署应用程序 路径 /DocumentManagerGui 但上下文无法启动


我的 Maven 的 settings.xml 文件是:

<server>  
    <id>localhost</id>  
    <username>script</username>  
    <password>script</password>  
</server>  


我的 tomcat-users.xml 文件是:

<role rolename="manager-gui"/>   
<role rolename="manager-script"/>  
<role rolename="manager-jmx"/>  
<role rolename="manager-status"/>  
<role rolename="admin-gui"/>  
<role rolename="admin-script"/>  

<user username="script" password="script" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>  


我的上下文文件位于 src 目录 META-INF 文件夹中。 content.xml 是:

<?xml version="1.0" encoding="UTF-8"?>   
<Context  antiJARLocking="true" antiResourceLocking="true">

    <WatchedResource>WEB-INF/web.xml</WatchedResource>  

    <Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"  />  

    <Transaction factory="com.atomikos.icatch.jta.UserTransactionFactory" timeout="60" />  

</Context> 


我在POM文件中的Tomcat插件配置为:

<plugins>  
    <plugin>  
        <groupId>org.codehaus.mojo</groupId>  
        <artifactId>tomcat-maven-plugin</artifactId>  
        <configuration>  
            <url>http://localhost:8080/manager/text</url>  
            <path>/DocumentManagerGui</path>  
            <server>localhost</server>  
            <mode>both</mode>  
        </configuration>  
    </plugin>  
</plugins> 

【问题讨论】:

  • Tomcat 日志说明了什么?

标签: tomcat


【解决方案1】:

我想要一份有关此问题的所有常见问题的列表,其中包含指向参考资料和结构良好的教程的链接。

恐怕无法评估所有可能触发tomcat显示此错误的可能问题,因为该错误太笼统并且可以触发它的常见情况太多。尝试这样做很像试图猜测是什么导致了未知应用程序崩溃,而只知道它崩溃了。

可以肯定的说是这个错误的原因是应用程序初始化阶段出了问题。

根据我的实践,我可以想到几组通用案例:

  1. 应用初始化时引发 PermGen Space 错误(大多数情况下这是类加载器泄漏的结果)。

  2. 在ServletContextListener 实现中处理应用程序初始化时引发了一些异常(原因可能是某些框架的错误配置或未解决的类依赖关系)。

  3. 别的东西。确实,可能存在某种或大量其他原因的 tomcat 配置错误/故障。

处理此错误的最可靠方法检查一下:

  1. 您的应用程序的日志(您可以在哪里找到您的日志取决于您的 Web 应用程序中日志记录的设置方式)

  2. tomcat的日志(一般可以在{tomcat dir}/logs找到)

... 获取有关导致错误的原因的更多信息并处理问题的根源。试图用其他方式解决这个问题更像是在和风车搏斗。

希望这会有所帮助。

【讨论】:

  • 这里的想法是为未来的读者提供一个很好的起点来解决此类问题。我通过安装 Tomcat 7 解决了我的问题(经过一番辩论),但我知道这并不总是一种选择。无论如何,这绝对是一个好的开始,我很高兴获得赏金。
猜你喜欢
  • 2015-04-01
  • 2015-01-26
  • 2013-01-05
  • 2017-02-24
  • 1970-01-01
  • 2012-10-01
  • 1970-01-01
  • 2017-01-12
  • 1970-01-01
相关资源
最近更新 更多