所以从我读的内容来看,这应该是非常简单的执行..我已经遵循了与创建我的application.xml文件中的类似的设置。WAS 6.1 - 在一个EAR中部署多个WAR
<application>
<display-name>test</display-name>
<module>
<web>
<web-uri>foo.war</web-uri>
<context-root>foo</context-root>
</web>
</module>
<module>
<web>
<web-uri>bar.war</web-uri>
<context-root>bar</context-root>
</web>
</module>
</application>
我测试过两个分开这些应用此JVM内部的和他们工作得很好......但是当放置在一起时我得到一个Struts 2的错误(包括应用程序已创建使用Struts 2框架) ,我不确定缺少什么。错误如下
[Servlet Error]-[Filter [struts2]: could not be initialized]: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - wsjar:file:<my filepath>/WEB-INF/lib/struts2-core-2.0.14.jar!/struts-default.xml:30:72
有什么想法?
*编辑 所以我一直在阅读的时候,你必须在WEB-INF/lib目录相互矛盾的struts2罐(或他们是在两个地方装)这个错误引起的。虽然我认为这不可能是一个问题,因为这些罐子在不同的战争中。
这应该工作,因为两个WAR都有它自己的类加载器。您是否在WebSphere的共享文件夹中放置了任何东西? – home
那是哪个文件夹?从我最近的一系列错误中,看起来他们的WEB-INF/lib&WEB-INF/classes文件夹正在彼此看到?例如,我刚才发现一个错误,说在另一个WAR中已经定义了一个名为'default'的struts包。另外在我得到错误之前,其他战争已经加载了几个与struts相关的jar文件。 –
是不是已经用struts库了? (WAS7,没有与6年以上的工作,所以不知道)。也许你应该抛弃你的WARS中包含的那些,看看是否有效。 – Renan