我使用Tomcat 7作为servlet容器,我有两个war文件(Eclipse中的两个项目) . 问题是,我想在两个已部署的war文件之间共享类 . 但就我所知,Tomcat / Servlet规范是不可能的 . 两个部署的Web应用程序似乎彼此隔离 .
所以我从JBoss那里读到了一个新手,作为一个应用服务器,我可以在其中部署ear文件(所以我可以将多个war文件放入其中)然后我可以在它们之间共享类?
所以我的问题:你是否同意我的陈述,是否可以用JBoss做到这一点?我是否必须进行更改,或者我可以轻松地将它们放在一个ear文件中并使用JBoss进行部署,它会起作用吗?
最诚挚的问候,蒂姆 .
1 回答
有2个简单的选择 . 两者都要求您在单独的项目(JAR)中定义共享类,我们称之为SHARED . 现在,在部署方面,您有两个选择:
将SHARED.jar复制到Tomcat 's lib folder and you'重新完成 .
在您的WebApp中引用SHARED.jar,从eclipse导出WAR时,工具将创建一个JAR,将其放在WebApp的WEB-INF / lib文件夹中,并创建WAR(参见屏幕截图) .
如果你选择#1选项,那么理解在WebApp类加载器(Tomcat系统类加载器)之间共享相同的类是很重要的,所以只有当你想在不同的WebApps之间共享状态时才会使用这个选项(例如单身人士) .
BTW:截图是使用Eclipse 3.6 WTP制作的...