JBoss在不同應(yīng)用間共享類和資源
JBoss中不同應(yīng)用之間如何共享類和資源:通常如果希望在JBoss不同應(yīng)用之間共享類和資源,我們應(yīng)將類和資源放在jboss/server/default/lib/下面,這樣所有的應(yīng)用可以共享資源;
JBoss中如果類和和資源放在不同的war包中,卻想在不同的應(yīng)用間何共享WAR包中WEB-INF/classes和WEB-INF/lib中的資源,能否做到哪?
可以通過jbossweb-tomcat-55.sar/META-INF/jboss-service.xml配置文件中配置屬性UseJBossWebLoader來解決該問題,只要將該屬性設(shè)置為true:表示Tomcat使用JBoss的統(tǒng)一類加載器作為Web應(yīng)用的類加載器這意味著WAR包中WEB-INF/classes和WEB-INF/lib目錄里的類將被加載到缺省的共享類加載器倉庫中。通過它,可以實(shí)現(xiàn)類和資源在Web應(yīng)用之間共享。但是,如果這不是你想要的情況,可以通過將該屬性設(shè)置為false來避免這種行為。
< attribute name="UseJBossWebLoader" > true < /attribute >
通常情況下應(yīng)該避免使用這種情況,因?yàn)楫?dāng)不同的應(yīng)用中擁有同樣的類和資源的時(shí)候,JBoss不同應(yīng)用之間會(huì)產(chǎn)生沖突;舉例如下:
兩個(gè)war應(yīng)用 WarA,WarB下面均有com.liuxiang.A.class文件;
現(xiàn)在期望每個(gè)War包下面分別用各自的A.class文件,當(dāng)修改一個(gè)WarA的應(yīng)用時(shí)候,tomcat會(huì)重新部署以下應(yīng)用。這個(gè)時(shí)候,就會(huì)出現(xiàn)WarA應(yīng)用使用WarB下面的A.class,造成混亂。
【編輯推薦】