我想在没有应用服务器的独立JavaFx客户机中部署有状态EJB Bean。EJB类有一个entitymanager引用,并根据db进行事务处理。该项目是一个maven原型,我在一个包中添加了EJB类。在我的main方法中,我进行了如下的JNDI查找
Properties props = new Properties();
props.put(EJBContainer.APP_NAME, "testejb");
props.put(EJBContainer.MODULES, new File("target/classes"));
EJBContainer ec = EJBContainer.createEJBContainer(props);
Context ctx = ec.getContext();
myEjbClass = (MyEjbClass) ctx.lookup("java:global/testejb/MyEjbClass");I成为exception javax.ejb.EJBException: No EJBContainer provider available:找不到任何提供程序名称。我已经在我的pom.xml.Why中添加了javaee-7和glassfish-embedded shell。
发布于 2014-02-07 11:11:11
您是否在程序中配置并启动了嵌入式Glassfish?
这可以通过执行以下操作来完成:
BootstrapProperties bootstrapProperties = new BootstrapProperties();
bootstrapProperties.setInstallRoot("C:\\applicationserverdir");
GlassFishRuntime glassfishRuntime = GlassFishRuntime.bootstrap(bootstrapProperties);
GlassFishProperties glassfishProperties = new GlassFishProperties();
glassfishProperties.setInstanceRoot("C:\\applicationserverdir\\domains\\myJavaFXAppDomain");
glassfishProperties.setPort("http-listener", 8080);
glassfishProperties.setPort("https-listener", 8181);
GlassFish glassfish = glassfishRuntime.newGlassFish(glassfishProperties);
glassfish.start();有关设置嵌入式Glassfish的更多信息,请单击此处:http://docs.oracle.com/cd/E18930_01/html/821-2424/giijw.html#scrolltoc
另外,您使用的是哪个Maven原型?
https://stackoverflow.com/questions/21469653
复制相似问题