gpt4 book ai didi

java - 两个struts2 webapps一起启动失败

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

我在让两个不同的 struts2 webapps 在 tomcat 中同时启动时遇到了问题。但是,当独立放置在 tomcat 的 webapps 文件夹中时,每个 webapps 都能正确启动。

我在 catalina.out 日志中得到以下内容-

严重:过滤器启动错误2009 年 8 月 13 日下午 3:17:45 org.apache.catalina.core.StandardContext 开始严重:上下文 [/admin] 由于先前的错误启动失败

环境- Java1.6、Tomcat6、Struts2.1.6、FC10

webapps 是“admin”和“user”。这两个 webapps 分别在它们的 WEB-INF/lib 目录中包含 struts2 jar。

web.xml 在两个 webapps 中都包含以下内容-

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>

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

需要注意的一点是,“admin”webapp 始终无法加载并出现上述错误。如果我从 webapps 文件夹中删除“用户”webapp,“admin”webapp 就会正常出现。

我还观察到 web.xml 中 w.r.t struts2 过滤器的另一件事 - 如果我从其中一个 web 应用程序的 web.xml 中删除 struts2 过滤器,则两个 web 应用程序启动时日志中没有任何错误(但当然我赢了'能够在删除过滤器的 webapp 中使用 struts)。

我也试过将 struts2 jar 移动到 tomcat lib 并将它们从各个 webapps 中删除,但同样的问题存在..

知道是什么导致了这个问题吗?

更新:奇怪的是,这在 Ubuntu 操作系统上运行良好。但问题仍然存在于 FC10 和 OpenSolaris 上。

最佳答案

我在使用 Spring 和在 web.xml 中使用这个监听器类时遇到了类似的问题:

org.springframework.web.util.Log4jConfigListener

请参阅 Spring 的文档 Log4jWebConfigurer ,它表示您需要为每个网络应用程序定义唯一的“网络应用程序根目录”属性,因此我必须在每个 web.xml 中都有这样的部分:

<!-- used by Log4jConfigListener -->
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>myappname.root</param-value>
</context-param>

你在使用 Spring 吗?如果不希望这能给你一些线索,我对 Struts2 了解不多,也许它做了类似的事情。让我知道进展如何!

关于java - 两个struts2 webapps一起启动失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1271125/

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