让一个 Tomcat 应用程序从另一个应用程序获取一个 bean

Have one Tomcat application get a bean from another one

目前我有一个 Spring 项目使用 Spring JPA 来处理数据对象和我的数据库。它的所有功能都可以通过调用单个外观 bean 来访问。我想基于这个数据模型制作一个 Web 应用程序,但我不想进一步扩展这个项目。相反,我想将我的持久层和服务层与实际的 Web 应用程序层分开。也就是说,我想将这个项目打包成一个“.war”文件并将其部署到我的 Tomcat 实例上。根据在 Tomcat 上工作的任何其他应用程序的要求,我想让这个其他应用程序从我的“.war”.

中注入外观 bean

我是 Tomcat 的新手,谷歌搜索对我帮助不大。所以这里是我对这个概念的问题和疑问:

提前致谢。

Web 应用程序(运行 在像 tomcat 这样的 servlet 容器中的东西)在设计上是相互隔离的。共享可能不是一个好主意。但是,要共享,您可以使用 JNDI。 tomcat 7 中描述了设置 JNDI here。您将需要一个自定义资源工厂。

您可能需要考虑 REST API 方法。你不能用 Spring 做 "cross application injection" 并且 JNDI 使用起来很麻烦。