jakarta-ee - 在所有 war 中共享 javax.ejb.Singleton

标签 jakarta-ee ejb java-ee-6 cdi

我正在使用 WebSphere 8.5.5 JEE6 Appserver。

我需要共享 javax.ejb.Singleton .那 1 个单例需要注入(inject)并被所有其他部署的 war 使用?

这可能吗?还是容器创建 1 javax.ejb.Singleton每个应用程序实例而不是每个 JVM 1 个?

如果是这样,是否还有其他选项可以为每个 JVM 创建一个 EJB 或 CDI Singleton bean 1?

最佳答案

我会告诉你我有几个项目的结构。 War 和 EJB 模块被所有人共享。
第一的:
必须创建一个项目库,您应该在其中声明您的 EJB 远程接口(interface)和实用程序类(例如:clintLib.jar)。
第二:
在您的 EJB 模块中,您必须使用 clientLib.jar 作为 lib。
第三
在您的 war 模块中,您必须使用 clientLib.jar 作为 lib。

这样,您就可以通过在 clientLib.jar 中声明的远程接口(interface)从任何 war 中访问您的 EJB 模块。 EJB 容器将使用对您透明的方式提供对查找 EJB 实例的访问。
我的应用程序结构是:
3 war
1个图书馆项目
1 EJB 项目

关于jakarta-ee - 在所有 war 中共享 javax.ejb.Singleton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24137146/

相关文章:

java - 这个java项目需要多长时间才能完成

java - 检门清洁 URL

java - 通过 Jersey 的 JAX-RS -> HTTP 正文中没有返回内容(方法完成没有错误)

java - 事务可以跨越多个具有无状态+事务范围的持久性上下文的业务方法吗

java - 如何在 JPA 的两列上运行像 SUM 这样的聚合函数并显示它们的结果?

java - 是否有类似于 Java EE 6 中可用的 Springs @Transactional 注释的东西?

java - 如何让 Eclipse Java EE 自动为 Web 项目生成分解的 WAR?

spring - 使用 Spring 在 WebSphere 中使用 Grails 跨集群访问 EJB

collections - javax.persistence.ManyToMany 允许哪些集合

jakarta-ee - 有没有什么好的监控EJB容器的工具?