代码之家  ›  专栏  ›  技术社区  ›  Jay

在Tomcat上部署war文件时出错

  •  1
  • Jay  · 技术社区  · 15 年前

    最近,我们的一个Tomcat服务器开始在部署战争文件时遇到问题。我们在webapps目录中有一个现有版本的war,以及解包的版本。当我们将一个新版本的war文件放到webapps目录中时,它不会解包新的war,应用程序就会死亡。如果我删除旧的解包版本,有时它会解包新版本。有时我必须重新启动Tomcat才能让它重新启动。

    在catalina日志中,我发现以下错误:

    WARNING: Error during context [/pos] destroy
    java.lang.StackOverflowError
            at sun.nio.cs.UTF_8$Encoder.encodeLoop(UTF_8.java:575)
            at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:544)
            at java.lang.StringCoding$CharsetSE.encode(StringCoding.java:342)
            at java.lang.StringCoding.encode(StringCoding.java:378)
            at java.lang.String.getBytes(String.java:812)
            at java.io.UnixFileSystem.getBooleanAttributes0(Native Method)
            at java.io.UnixFileSystem.getBooleanAttributes(UnixFileSystem.java:228)
            at java.io.File.isDirectory(File.java:723)
            at org.apache.catalina.startup.ExpandWar.delete(ExpandWar.java:360)
            at org.apache.catalina.startup.ExpandWar.delete(ExpandWar.java:361)
            at org.apache.catalina.startup.ExpandWar.delete(ExpandWar.java:361)
            at org.apache.catalina.startup.ExpandWar.delete(ExpandWar.java:361)
            at org.apache.catalina.startup.ExpandWar.delete(ExpandWar.java:361)
            at org.apache.catalina.startup.ExpandWar.delete(ExpandWar.java:361)
            at org.apache.catalina.startup.ExpandWar.delete(ExpandWar.java:361)
    

    最后一行重复了几百次。

    然后还有其他错误。我很乐意把它们贴进去,但我怀疑第一个错误最有可能是罪魁祸首。

    有线索吗?这意味着什么?

    一旦我删除旧的解包,并在必要时重新启动,一切似乎都很好。

    我们在Red Hat Linux 2.6.18上运行Tomcat 5.5.23。

    1 回复  |  直到 14 年前
        1
  •  0
  •   Daniele    15 年前

    这是Tomcat 5.5.23中的一个错误 https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=620996

    升级或降级。

    拜伊

    推荐文章