问题标签 [ejb-3.1]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5110 浏览

java - 使用 glassfish 为多个 Web 项目共享 ejb 3

我目前有一个包含 EJB 和 WAR 的 J2EE 项目。当我在最终的 EAR 中只捆绑了一个 WAR 和一个 EJB 模块时,一切都很好。我现在需要使用相同的 EJB 模块开发另一个 WAR。

因此,我在新 WAR 的库中添加了 EJB 模块。问题是当我尝试部署与两个 WAR 和共享 EJB 捆绑的 EAR 时,出现以下异常:

Caused by: java.lang.RuntimeException: Error while binding JNDI name com.alex.ejb.MyBeanRemote__3_x_Internal_RemoteBusinessHome__ for EJB : MyBean

当我从第二个 WAR 的库中删除 EJB 时,一切都恢复了。

有什么我错过的吗?

最后,真正的问题是“如何在多个 Web 应用程序中共享 EJB?”

感谢帮助

0 投票
6 回答
12925 浏览

jakarta-ee - CDI:跨不同模块/bean档案使用拦截器

我的 Java EE 6 应用程序包含一个 war 和一个打包在 ear 文件中的 ejb 模块。我将 CDI 用于 DI(即我在两个模块中都有一个 beans.xml 文件)。我也想使用在war模块的ejb模块中定义的日志拦截器。我在 ejb 的 beans.xml 中启用了拦截器:

这仅适用于在ejb 模块中使用拦截器注释的类。战争模块中的类不会被拦截(尽管它们也被拦截器注解)。我认为解决方案是在战争的拦截器中启用拦截器(如上)。但是无法使用以下消息部署应用程序:

严重:加载应用程序时出现异常:WELD-001417 启用的拦截器类 com.test.interceptor.LoggingInterceptor 既没有注释 @Interceptor 也没有通过可移植扩展注册

我的 LoggingInterceptor 看起来像这样:

和拦截器绑定:

如何将拦截器用于两个模块?

0 投票
0 回答
3045 浏览

java - 零星的 javax.ejb.AccessLocalException

我正在使用 Glassfish 3.0.1。尝试调用本地 EJB 时有时会出现此错误:

99% 的时间,一切正常。但是当它发生时,每次调用该 EJB 方法的尝试都会导致相同的错误。修复它的唯一方法是取消部署应用程序,然后再次部署。谁能告诉我发生了什么事?

0 投票
3 回答
27880 浏览

jpa - 在指定 PU 时修复“无法解析持久性单元...”错误,发现

从今天(2010-11-12)开始,我正在运行 Glassfish 3.1-SNAPSHOT。

我正在使用嵌入式 EJBContainer。

根据 EJBContainer 的报告,在类路径上,我有一个 META-INF/persistence.xml。该文件定义了两个持久性单元:一个称为“ngp”,一个称为“cx”。

调试输出显示 Glassfish JPA 部署程序找到了它,并识别了 cx PU 和 ngp PU。

EJBContainer 出现以下非常常见的 JPA 错误:

我再次强调,部署日志显示至少部署者遇到了两个持久性单元。

想要使用“cx”PU 的类包含通常的样板:

persistence.xml 位于(通常的 Maven 位置)中target/test-classes/META-INF,如下所示:

Glassfish 嵌入式 EJBContainer 在工作时会输出以下内容:

故障排除食谱,有人吗?

0 投票
1 回答
1236 浏览

java - 在多个 ejb 之间共享 env-entry

我目前正在开发一个包含多个 ejb 和一个 ejb-jar.xml 的项目。我想知道如何在各种 ejb 之间共享来自 ejb-jar.xml 的 env-entry。

例子 :

我有以下 ejb-jar.xml

在 MyBeanA 中我使用:

我可以使用以下代码获取 myVar 的值:

有没有办法在像 MyBeanB 这样的另一个 ejb 中获取 myVar 的值?

0 投票
3 回答
3492 浏览

java - EJB 3.1 - 在 EJB 中使用 @EJB - 有可能吗?

是否可以在另一个 EJB 中使用 @EJB?我现在正在尝试这样做,而我的 EJB 最终为空。我将在一个例子中概述我的问题。

这种事情应该是可能的吗?我还应该提到我正在使用嵌入式容器(通过 EJBContainer),并且我正在使用 JNDI 查找 AccountService,但是当我尝试在 AccountService 中调用 loginService.createLogin 时,loginService 为空(未由@EJB)。

我正在尝试做的事情可能吗?

谢谢。

0 投票
1 回答
221 浏览

java - 如果我将 EJB 放在 EAR 文件中,我应该将实体类、单独的 jar 或 Web 应用程序放在其中吗?

如果我将 EJB 放在 EAR 文件中,我应该将实体类、单独的 jar 或 Web 应用程序放在其中吗?

谢谢。

0 投票
1 回答
1668 浏览

java - 如何在 Glassfish 中获取远程 EJB 客户端的 IP 地址?

正如标题所说:

我有一个 Swing 独立客户端,它连接到部署在 GF 3.0.1 上的 EJB 应用程序。我想在 EJB 方法中访问客户端 IP。

这可能吗?

我也找到了这个线程,但解决方案是针对 JBoss 的......

0 投票
2 回答
3041 浏览

java - 从 EJB 拦截器抛出异常

假设我有一个看起来像这样的拦截器:

这适用于我的 EJB 的不同方法。

我通常希望将抛出的异常传递给调用客户端,就像所有正常的 EJB 异常一样。

显然,如果我从拦截器中抛出它,这不会发生......它甚至没有登录到服务器上;就像它从未被抛出一样 - return 语句从未被执行。

我究竟做错了什么?

我正在使用 GF 3.0.1

0 投票
2 回答
3147 浏览

singleton - 集群中的 EJB 3.1 单例

我在集群环境中没有找到太多关于 EJB 3.1 Singletons 的信息。规范是否说这些单例将保证每个 JVM 一个实例 - 所以每个集群节点一个实例。不是每个集群一个?