我在有许多静态方法的类中注入一个无状态会话bean。 我想从这些静态方法访问这个bean。这个没有文档。我们可以从静态方法访问/调用无状态会话Bean吗?
所以我想知道它是否允许。如果是的话,有什么缺点?推荐/不推荐?
我在有许多静态方法的类中注入一个无状态会话bean。 我想从这些静态方法访问这个bean。这个没有文档。我们可以从静态方法访问/调用无状态会话Bean吗?
所以我想知道它是否允许。如果是的话,有什么缺点?推荐/不推荐?
您可以绝对地从实例方法或变量访问静态方法或变量,但不能从静态方法访问实例方法或变量!
问题是关于使用STATIC方法访问它们。 –
如果允许?是的,它可以在容器内和容器外部允许。
您可以从非EJB访问EJB。请检查下面的链接。
https://stackoverflow.com/a/9061924/1718893
如果类和EJB在同一个项目/部署,那么JNDI调用应该很容易。上述链接中提到的几个步骤可以跳过。
建议在方案中像下面 -
根据的情况下,这可能是一个推荐的方法。当我不得不实施工厂模式时,我遇到了这种情况。 EJB只在需要时根据条件被调用。我可以让Factory类本身成为一个EJB。但由于它依赖于其他一些决策组件,这是不可能的。
在scenraio不推荐像下面 -
取决于有多少规范的开发,因此这类方法也可被劝阻。如果所有的开发人员对EJB,事务管理和部署都没有多少经验,那么这种方法就会产生危险的情况。
谢谢。问题是关于从静态方法访问它们。而不是如何。它关于“如果我们可以”和“如果它是一件好事/推荐”做和 –
嗨凯文,我的答案可能不是预期的格式。我试着再次逐一回答问题。 – Taps
嗯..我想你错过了一点。我不是在询问有关从非EJB访问的内容,我正在询问有关“静态方法”的访问。 –
你试过了吗?你有什么问题吗? – kosa
建筑决策基于此。还没有尝试过。 –
文档对此没有提及。 –