在EJB3.1中,在无状态EJB中有一个同步块可以吗?
同步块用于在出现连接错误时更新连接。
每当您提出请求时。容器为您提供Bean的新实例,或来自bean池的现有实例。您使用bean,释放它,然后它返回到EJB池。尽管如此,我认为没有必要同步该方法,因为永远不会发生两个线程使用同一个EJB实例的情况。
如果要使用 Singleton Bean,请查看@LockRead
并@LockWrite
注释。本教程非常有用。
我不理解无状态会话bean。文档说,instances变量可能包含特定于客户机的状态,然后说,当方法完成时,不应该保留状态。
场景:EjbA和EjbB都是远程无状态会话bean。 对b的这些方法调用中的任何一个都可以发生在集群环境中的不同节点/VM上,这是否正确? 甚至连对method1的调用? 我的意思是,如果一些客户端调用方法foo,是否会发生这样的情况:在这个事务中,在node1上调用方法1,下一个对方法1的调用,在同样的foo()调用期间,转到node2上的Ejb实例? 解释下面引用的"Enterprise Ja
我有一个ear,它包含2个war文件,每个war都包含无状态ejb和rest类。接口位于commons中。jar文件。耳朵结构如下所示: 我试图使用无状态-ejb-2中的无状态-ejb-1和注释,但我在部署期间遇到了错误。当我在stateless-EJB-2中使用@EJB时,就部署了ear,但在调用jersey-rest-2时,我遇到了一个远程查找错误。 这是我的方法调用链: 泽西-rest-1
我有一个EJB无状态会话Bean。我有以下要求: 这个无状态EJB应该在启动时初始化 初始化代码应该对数据库进行事务性访问 问题是: @Startup仅适用于@Singleton EJB @PostConstruct注释(至少在WebSphere上)在这一点上没有事务性上下文,所以初始化代码在这里爆炸! 可能的解决方案? 使用JavaEE定时器,但它似乎是为周期性执行而设计的。我只想在零点执行一次
我正在尝试将JMS队列注入到无状态EJB中。我的代码看起来是这样的: 当我试图将其部署到应用程序服务器(Wildfly 9.0.2)时,引发了以下异常 如果我将mappedName更改为远程JNDI名称,它就会起作用 或者我将无状态EJB切换到一个依赖的CDI Bean Wildfly配置如下所示: 那么,为什么不能将JMS队列注入到无状态EJB中,为什么它可以在CDI bean中工作呢?我做错了
假设我有一个名为db utils的简单库,它有一个CrudService CDIBean(RequestScope),我的web应用程序使用它来执行CRUD操作。 我还有一个名为graddb的EJB项目,它从数据库映射实体。Grad db还具有用于在db utils的CrudService中设置entityManager的生产者。 我已经试过了,显然效果不错。我的问题是:这是一种糟糕的做法吗?在无