ManagedBean中的EJB注入

时间:2017-08-21 12:22:50

标签: jsf ejb managed-bean

当按下我的网页上的按钮时,控制器/监听器(@ManagedBean)在数据库中创建10个新实例。为了实现这一点,我需要一个MyClassFacade变量(带有@EJB anotation)来从数据库中获取不同的值,以及用于在数据库中保留新实例的.create()方法。

但是,显然,我不允许注入EJB注释变量。我不需要在xhtml文件中提供该变量。我只需要在java类控制器中为我的逻辑。

为了增加混乱,项目部署并在大约50%的时间内正常工作。另外50%我收到错误:

  

com.sun.faces.mgbean.ManagedBeanCreationException:在托管bean chartView上执行资源注入时发生错误由以下引起:com.sun.faces.spi.InjectionProviderException:com.sun.enterprise.container.common.spi.util。 InjectionException:尝试注入Remote的异常ejb-ref name = ajax.chartView / ejbPulsFacade,Remote 3.x interface = com.mycompany.puls.PulsFacade,ejb-link = null,lookup =,mappedName =,jndi-name = com。 mycompany.puls.PulsFacade,refType = Session到类ajax.chartView:查找失败的' java:comp / env / ajax.chartView / ejbPulsFacade'在SerialContext中[myEnv = {java.naming.factory.initial = com.sun.enterprise.naming.impl.SerialInitContextFactory,java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs = com.sun.enterprise.naming}           在org.glassfish.faces.integration.GlassFishInjectionProvider.inject(GlassFishInjectionProvider.java:194)

也许我可以以某种方式跳过注入@EJB变量? 我该怎么办?

编辑:Here是一个类似的问题,提供的解决方案是:创建一个不同的java类,它声明所有的EJB并扩展托管bean。

0 个答案:

没有答案