1 基本信息
摘要:Jboss中如果类和和资源放在不同的war包中,却想在不同的应用间何共享WAR包中WEB-INF/classes和WEB-INF/lib中的资源,能否做到哪?
作者:刘相
2 解决方案
通常如果希望在Jboss不同应用之间共享类和资源,我们应将类和资源放在jboss/server/default/lib/下面,这样所有的应用可以共享资源;
如果类和和资源放在不同的war包中,却想在不同的应用间何共享WAR包中WEB-INF/classes和WEB-INF/lib中的资源,能否做到哪?
可以通过jbossweb-tomcat-55.sar/META-INF/jboss-
service.xml配置文件中配置属性UseJBossWebLoader来解决该问题,只要将该属性设置为true:表示表示Tomcat使用
JBoss的统一类加载器作为Web应用的类加载器这意味着WAR包中WEB-INF/classes和WEB-INF/lib目录里的类将被加载到缺省
的共享类加载器仓库中。通过它,可以实现类和资源在Web应用之间共享。但是,如果这不是你想要的情况,可以通过将该属性设置为false来避免这种行
为。
-
<attribute name="UseJBossWebLoader">true</attribute>
通常情况下应该避免使用这种情况,因为当不同的应用中拥有同样的类和资源的时候,不同应用之间会产生冲突;举例如下:
两个war应用 WarA,WarB下面均有com.primeton.a.class文件;
现在期望每个War包下面分别用各自的a.class文件,当修改一个WarA的应用时候,tomcat会重新部署以下应用。这个时候,就会出现WarA应用使用WarB下面的a.class,造成混乱。
转载,其实这个功能我一直在用,但还是在这里备份一下,并共享给大家。
posted on 2007-12-03 10:09
无声 阅读(360)
评论(0) 编辑 收藏 所属分类:
职场生活