最近在将项目部署到jboss上时出现一些问题,经过两天研究终于解决了,
在JSOSS4.2.3中JBOSS的WEB加载器默认是FALSE,根据配置文件的说明,其目的就是当出现多个加载器的时候,通过设定真假值来决定是否把JBOSS的WEB加载器作为统一的加载器。也就是说,如果在程序中特殊指明了某一个加载器,或者lib中用到了其它版本tomcat的JAR包,那么JBOSS自带的加载器设为FLASE,就会导致WAR包的JAR和类文件都没有被JBOSS的加载器加载,所以把JBOSS自带的加载器由默认的FALSE改为TRUE,问题就解决了。
方法是:将D:/jboss-eap-4.3/jboss-as/server/production/deploy/jboss-web.deployer/META-INF/jboss-service.xml中的UseJBossWebLoader值改为true即可
但是将项目部署到jboss5.1上时还会出现问题,可能和spring的jar有充突
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from URL [vfsfile:/F:/jboss5/server/default/deploy/rock.war/WEB-INF/classes/applicationContext.xml]; nested exception is java.lang.ClassCastException: org.apache.xerces.jaxp.DocumentBuilderFactoryImpl cannot be cast to javax.xml.parsers.DocumentBuilderFactory
在网上查了好久也没找到解决办法,不知道是什么原因导至的。