问题标签 [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.
java - Having SerializationException when trying to return custom object type
I just create the most simple Singleton EJB to return a custom serializable object, but I'm getting the following exception when I invoke the remote method:
org.jboss.serial.exception.SerializationException: Could not create instance of model.Usuario - model.Usuario
It works fine with simple types and normal classes (String for example) but not for an object pertaining to a class I created.
I'm using JBoss 6.0 and Eclipse.
What could I be missing?
Thanks in advance, Saul
jakarta-ee - 在 JavaEE 6 WAR 与 EAR 中打包 EJB
开始一个新项目,想知道在 WAR 和 EAR 中打包 EJB 的优缺点。
当 EJB 处于 WAR 中时,JNDI 是否仍然有效?效率?ETC。?
谢谢。
java-ee-6 - Java EE 6 WAR 中的 sun-ejb-jar.xml
Java EE 6 的最大特性之一是能够将 EJB 打包到 WAR 中。到目前为止,我已经为几个项目完成了这项工作。我正在使用 Java EE 6、Glassfish 3.1 并将我的应用程序部署为 WAR。我希望能够控制应用服务器正在创建的 bean 的数量。以前,我会通过在我的 EAR 中的 EJB jar 中的 sun-ejb-jar.xml 文件中指定正确的值来做到这一点。
当我在 /WEB-INF/classes/ 的 WAR 中放置一个 sun-ejb-jar.xml 文件时,Glassfish 似乎不尊重它。
想法?
谢谢,-杰
ejb-3.1 - 如何将用户分配给某些角色 EJB
我需要在这里澄清一下,拜托。我目前正在学习 EJB,并且我读过有关将方法的访问权限限制在某些“角色”中的用户。我知道限制访问权限的元数据是如何工作的。但是,我不知道如何将用户置于各自的角色中。用户的角色是否在数据库中设置,并且ejb进入数据库并检查角色(如果是,如何)?我的意思是,我在哪里或如何以编程方式强制某些用户属于,例如,客户角色或管理员角色?如果您知道任何书籍,也可以根据需要提供书名。
谢谢你。
ejb - 如何获取所有 EJB 计时器?
在 EJB 3.1 中,我可以在为该 bean 获得的 TimerService 实例上使用 TimerService#getTimers() 获取特定 bean 的所有计时器。
然而,我真正需要的是一个系统范围的版本。即我想要一个 EJB 容器中所有计时器的列表。
这样的事情可能吗?
eclipse - eclipse Galileo 版本的问题
对于添加罐子,当我选择部署程序集-添加-java 构建路径条目时……我什么都没有……没有罐子可供选择……我该怎么办?请把答案发给我。
session - 在带有 RequestScope 的 ManagedBean 中使用有状态 EJB 的问题
我在 Glassfish v3 应用服务器中使用 JSF 2.0 和 EJB 3.1。而且我实际上面临着以下问题:
在带有 RequestScope 的 MenagedBean 中,我想访问一个会话对象(带有 @Stateful 的 EJB),它应该将一些会话相关信息存储为选定类别、选定页面(带有用于每个类别)等 - 我认为没什么特别的。
首次选择类别时,将创建并显示数据表。到目前为止还好。现在,如果单击项目(行)(以显示项目的详细信息)或如果应显示下一页,则重新创建会话(有状态 EJB)并再次使用默认值来显示和呈现页面。
代码如下所示:
和会话 EJB:
}
如果我将 ManagedBean 的 Scope 更改为 SessionScope 一切正常,但我不喜欢这样,因为使用内存问题。
我的代码有什么问题...请帮助我。
格里兹,格里
java-ee-6 - CDI 注入如何在 MDB 和 @Scheduled bean 中工作?
我正在开发一个部署在 JBoss 6 Final 上的大型 Java EE 6 应用程序。我当前的任务涉及始终使用@Inject 而不是@EJB,但是我在某些类型的bean 上遇到了一些问题,特别是@MessageDriven beans 和带有@Scheduled 方法的bean。
发生的情况是,如果我对时间不走运(对于@Schedule),或者如果在启动时 MDB 的队列中有消息,bean 的实例化将失败,因为注入的资源(它们本身是 EJB)尚未绑定.
因为我使用@Inject,所以我猜测EJB 容器认为我的bean 已经准备好了,因为容器本身并不关心@Inject;它可能只是假设由于没有@EJB 注入,bean 已准备好使用。然后,注入的 CDI 代理将失败,因为要注入的资源实际上尚未绑定。
小例子:
上面的示例可能不会经常失败,因为只有两个 bean,但是我正在处理的项目绑定了很多 EJB,这会放大问题。但它可能会失败,因为不能保证首先绑定 MySupportingBean,如果在绑定 MySupportingBean 之前调用 onTimeout,则 MyScheduledBean 的实例化将失败。如果我改用 @EJB,则在满足对 MySupportingBean 的依赖之前,不会绑定 MyScheduledBean。
请注意,该示例不会在 onTimeout 本身失败,而是在 CDI 尝试注入 MySupportingBean 时失败。
我在不同的论坛上阅读了很多帖子,很多人认为@Inject 总是更好。一般来说,我同意,但他们如何处理@Schedule 或@MessageDriven 与@Inject 结合?以我的经验,在这些情况下 bean 是否可以工作归结为运气不好,并且 bean 将任意失败,具体取决于 EJB 的部署顺序以及何时调用 @Schedule 或 onMessage。
java - 重新部署 EJB 后出现 javax.ejb.NoSuchEJBException
使用 Glassfish 3.0.1 ... 如果我有一个 Web 应用程序远程访问另一个应用程序中的 EJB,并且重新部署了包含 EJB 的远程应用程序,我会得到一个 javax.ejb.NoSuchEJBException(参见下面的堆栈跟踪)。
这不应该工作吗?我可以看到有问题的 EJB 已成功部署,使用完全相同的 JNDI 名称。
除了重新启动 Web 应用程序之外,还有其他方法可以解决此问题吗?应该注意的是,在这个堆栈跟踪来自的特定示例中,我正在访问一个使用 CDI 注入 bean 的 servlet:
注入是使用以下生产者完成的,以获得正确的 EJB:
生产者用于更容易将服务包装在代理中,并更容易更改 EJB 的查找方式。
StatusService 接口和实现如下:
编辑:提供了我自己可能的解决方案。有更好的吗?
完整的堆栈跟踪:
jakarta-ee - MDB 和 JMS 的区别
请让我知道有什么区别: