我使用RAD 7.0开发Struts2应用程序。当我在websphere 6.1上运行RAD内部的Web应用程序时,出现以下错误:
无法初始化]:无法加载bean:type: class:com.opensymphony.xwork2.ObjectFactory - bean - wsjar的:文件:/ C:/workspace_test/Jars/struts2-core-2.0.11.2.jar /struts-default.xml:30:72 在 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:208) ....更多引起:Bean类类 名为xwork的com.opensymphony.xwork2.ObjectFactory已经存在 被bean加载 - wsjar的:文件:/ C:/workspace_test/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/Struts2Demo/WEB-INF/lib/struts2-core-2.0.11.2.jar /支柱默认.XML:30:72 - bean - wsjar:file:/ C:/workspace_test/Jars/struts2-core-2.0.11.2.jar!/struts-default.xml:30:72 在 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:193) ......还有33个
据我所知,这是因为2份struts2罐子。让我解释一下我如何在RAD环境中配置我的Web项目。
我有一个名为“Struts2Demo”项目的Web项目。还有一个名为“JARS”的独立项目,其中包含所有必需的罐子。
Struts2Demo Web项目所需的所有jar都使用引用“JARS”项目的“J2EE Module Dependencies - Web Libraries”进行配置。
因此加载Web应用程序时RAD正在从“JARS”项目加载jar文件,也从eclipse temp文件夹“/C:/workspace_test/.metadata/.plugins/org.eclipse.wst.server.core/ tmp0 / Struts2Demo / WEB-INF / lib /“,因此错误。
所以,我的问题是除了在WEB-INF / lib中放置必需的jar之外,还有什么方法可以修复这个配置
答案 0 :(得分:0)
RAD的零经验。但标准的做法是将struts jar(以及一般来说,大多数jar)放在每个web应用程序的WEB-INF / lib中。 Webapps中每个库(不同的类加载器)的类隔离通常会超过重复的不便,这有助于避免出现问题。