gpt4 book ai didi

java - Tomcat 上的无效 WAR 错误

转载 作者:行者123 更新时间:2023-11-28 23:28:07 25 4
gpt4 key购买 nike

SO 上有一些未回答的问题,但我想公开我的具体情况,因为我认为它与我已经阅读过的案例不同。

我的应用程序是一个WAR,它实际上只是一个在JSP 页面中启动的Flash 应用程序。我实现了一项新功能,它会导致我的客户的 Tomcat 记录:

SEVERE: Exception fixing docBase for context [/Sunnel_BlazeDS]
java.util.zip.ZipException: error in opening zip file

SEVERE: Exception fixing docBase for context [/Sunnel_BlazeDS]
java.util.zip.ZipException: error in opening zip file
.
.
.

Dec 17, 2015 3:12:54 PM org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Invalid or unreadable WAR file : error in opening zip file
.
.
.

Dec 17, 2015 3:12:54 PM org.apache.catalina.core.ContainerBase addChildInternal
SEVERE: ContainerBase.addChild: start:
.
.
.

Dec 17, 2015 3:12:54 PM org.apache.catalina.startup.HostConfig deployWAR
SEVERE: Error deploying web application archive /apache/apache-tomcat-7.0.52/webapps/Sunnel_BlazeDS.war
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Sunnel_BlazeDS]]
.
.
.

新功能仅包含一个实现 ServletContextListener 的类,因此它与 Tomcat 一起启动并完成一些工作(发送电子邮件)。为了工作,它还需要客户端在 conf/context.xml 中设置一些变量。

<?xml version='1.0' encoding='utf-8'?>
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<Environment override="false" type="java.lang.String" value="someone@clientdomain.com" name="mailFrom"/>
<Environment override="false" type="java.lang.String" value="mail.domain.com" name="mailHost"/>
<Environment override="false" type="java.lang.String" value="********" name="mailPassword"/>
<Environment override="false" type="java.lang.String" value="pedro.otero@domain.com" name="mailTo"/>
<Environment override="false" type="java.lang.String" value="pedro.otero@domain.com" name="mailUser"/>
</Context>

我尝试在 web.xml 中注册新类,或者只是用 @WebListener 对其进行注释,但都以同样的方式失败。但问题是客户向我发送了他们所有的 Tomcat 文件夹,它在我的机器上工作。所以这个错误只发生在他们身上,使用相同的设置,因为我在没有修改任何配置的情况下启动了他们的 Tomcat。

想补充一点,我所做的新功能意味着 3 个新的 jar 将与 WAR 打包在一起。我应该在那些可能导致问题的 jar 中寻找什么?

部署是通过直接将 WAR 放在 webapps 文件夹中进行的。客户端可以部署我的 WAR 的任何以前版本。它只是具有新功能的那一个。

最佳答案

您应该比较两个 Tomcat 的 conf/server.xml 文件:您的和有问题的。特别注意 docBase 属性,检查它是否指向一个可读的、有效的 WAR 文件。

关于java - Tomcat 上的无效 WAR 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34361139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com