专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 应用服务器

weblogic struts2 报错。大侠们帮帮忙啊该如何处理

发布时间:2010-06-14 17:13:54 文章来源:www.iduyao.cn 采编人员:星星草
weblogic struts2 报错。。大侠们帮帮忙啊~
项目在tomcat下启动没有问题,但是部署到weblogic后就报错:
<2010-4-20 下午02时54分57秒 CST> <Error> <HTTP> <BEA-101165> <Could not load use
r defined filter in web.xml: org.apache.struts2.dispatcher.FilterDispatcher.
Unable to load configuration. - [unknown location]
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(
ConfigurationManager.java:58)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Di
spatcher.java:371)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:424)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.
java:213)
at weblogic.servlet.internal.FilterManager$FilterInitAction.run(FilterMa
nager.java:329)
Truncated. see log file for complete stacktrace
Error loading configuration file struts.xml - [unknown location]
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loa
dDocuments(XmlConfigurationProvider.java:165)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.ini
t(XmlConfigurationProvider.java:130)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContai
ner(DefaultConfiguration.java:155)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(
ConfigurationManager.java:55)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Di
spatcher.java:371)
Truncated. see log file for complete stacktrace
unable to attain an URLClassLoader - [unknown location]
at com.opensymphony.xwork2.util.ClassPathFinder.findMatches(ClassPathFin
der.java:80)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loa
dConfigurationFiles(XmlConfigurationProvider.java:908)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loa
dDocuments(XmlConfigurationProvider.java:161)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.ini
t(XmlConfigurationProvider.java:130)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContai
ner(DefaultConfiguration.java:155)
Truncated. see log file for complete stacktrace
>



struts2-core-2.1.2.jar和struts2-spring-plugin-2.1.2.jar我都引入了,
不知道是什么原因啊。。。。。


------解决方案--------------------
在我看来这种问题最好的解决办法就是修改你的struts.xml配置文件include里面的通配符*
有多少个文件就include多少个文件,不要采用通配符。
因为我跟踪了一下代码,发现报这个错误在于xwork的ClassPathFinder.findMatches方法里取得当前classloader的方式是ClassLoader loader = Thread.currentThread().getContextClassLoader();
在tomcat环境下取到的是URLClassloader的实例,而在weblogic下面却是weblogic.utils.classloaders.ChangeAwareClassLoader ,weblogic有自己的classLoader机制,因此导致了错误。我觉得解决此类问题除非weblogic自身去解决,比如继承URLClassLoader等。
如果你自己尝试解决,即使解决了,可能也会出现这样那样的问题。因此,还是按照最普通的方式,老老实实的将所有的文件都一个一个include进来吧。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: