Tomcat6 关机失败

标签 tomcat tomcat6 shutdown catalina

我安装了 tomcat 6.0.32 并在其上运行我的 Web 应用程序。当 tomcat 正确启动或停止时,通常的停止/启动工作正常。但是当我试图在启动过程中停止 tomcat 时,停止失败。

$service tomcat6 stop

Stopping tomcat6:                                          [FAILED]

日志中的错误是:

SEVERE: Catalina.stop:
java.net.ConnectException: Connection refused
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(Unknown Source)
        at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
        at java.net.PlainSocketImpl.connect(Unknown Source)
        at java.net.SocksSocketImpl.connect(Unknown Source)
        at java.net.Socket.connect(Unknown Source)
        at java.net.Socket.connect(Unknown Source)
        at java.net.Socket.<init>(Unknown Source)
        at java.net.Socket.<init>(Unknown Source)
        at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:422)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:338)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:416)

我也试过用武力,但没用。有谁知道我们该如何解决这个问题?

注意:我能够在启动过程中停止 tomcat6 (6.0.24),但它在 6.0.32 版本中不起作用。任何帮助/信息都会有很大的帮助!

最佳答案

这是为了帮助遇到相同问题的任何人。请记住,我无法解释更改的工作原理,但它解决了我的问题,因此将其发布给其他人。

/etc/init.d/tomcat6中有一个名为“parseOption”的函数,它解析配置文件中指定的配置。此函数在其他函数 [停止/启动] 中被调用,并且在解析配置时工作正常,如上面的输出所示。

stop函数内部,原来是这样调用的:

   if [ -f "/var/lock/subsys/${NAME}" ]; then
      parseOptions
      $SU - $TOMCAT_USER -c "${TOMCAT_SCRIPT} stop" >> $TOMCAT_LOG 2>&1

我把上面的改成了:

 if [ -f "/var/lock/subsys/${NAME}" ]; then
    $SU - $TOMCAT_USER -c "${TOMCAT_SCRIPT} stop" >> $TOMCAT_LOG 2>&1
    parseOptions

它奏效了。我能够在启动过程中停止 tomcat,否则。 停止功能的其余部分也正确执行 [删除 pid 文件,终止进程...]。 当 tomcat 处于启动模式或正在启动时,实现有何不同尚不清楚,因为在启动模式下,常规停止在没有任何更改的情况下工作正常。

关于Tomcat6 关机失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6457410/

相关文章:

java - 在webapp中优雅地关闭ExecutorService?

java - 将 .war 文件转换为正确的版本

java - 关于 JVM 信号处理

tomcat - Tomcat 中的 JNDI 资源

tomcat - 在 IntelliJ 中运行 Tomcat 时,如何更改控制台中 [INFO] 的颜色?

jsp - tomcat 如何生成它的工作目录 *_jsp.java 文件,什么可能导致它生成零字节文件?

windows - 如何将自定义字符串添加到 Windows 7 关机屏幕显示的消息中?

sockets - 关闭/关闭对 TCP 接收缓冲区的影响

java - 在 Tomcat 8 和 Tomcat 9 之间,关于 Tomcat 中的 SSL 有什么重要的变化吗?

java - AIX 服务器上的 "No unprofiled JVMs found"- JProfiler