首页 文章

在Tomcat中的war文件之间共享Java类?

提问于
浏览
4

我使用Tomcat 7作为servlet容器,我有两个war文件(Eclipse中的两个项目) . 问题是,我想在两个已部署的war文件之间共享类 . 但就我所知,Tomcat / Servlet规范是不可能的 . 两个部署的Web应用程序似乎彼此隔离 .

所以我从JBoss那里读到了一个新手,作为一个应用服务器,我可以在其中部署ear文件(所以我可以将多个war文件放入其中)然后我可以在它们之间共享类?

所以我的问题:你是否同意我的陈述,是否可以用JBoss做到这一点?我是否必须进行更改,或者我可以轻松地将它们放在一个ear文件中并使用JBoss进行部署,它会起作用吗?

最诚挚的问候,蒂姆 .

1 回答

  • 3

    有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制作的...

    enter image description here

相关问题