草庐IT

java - 是否可以使用 CDI 注入(inject) EJB 实现而不是其接口(interface)?

我的配置是:Wildfly8.2.0,Weld是否可以在Bean中注入(inject)而不是在CDI的接口(interface)中注入(inject)?@StatelessclassBeanimplementsIBean{...}interfaceIBean{...}@SessionScopedclassScoped{@InjectBeanbean;//Fail@InjectIBeaniBean;//OK}编辑:更多信息在我之前的问题中:StatelessEJBimplementsinterfaceinjectionfailed 最佳答案

java - ejb 查找因 NamingException 而失败

我在web.xml中添加了以下内容:ejb/userManagerBeanSessiongha.ywk.name.entry.ejb.usermanager.UserManagerHomewhatshouldgohere??以下java代码给了我NamingException:publicUserManagergetUserManager()throwsHUDException{StringROLE_JNDI_NAME="ejb/userManagerBean";try{Propertiesprops=System.getProperties();Contextctx=newIniti

java - EJB客户端如何定位没有url的EJB服务器?

我是JavaEE的新手。目前,我正在阅读SunMicrosystems的JavaEE6教程,第1卷(基本概念测试版)。为了摆脱单调的阅读,我经常玩一些其他人编写的JavaEE项目/代码。我来自东南部。我的脑袋里仍然充满了SE。在SE(两层应用程序)中,我使用DATABASE_URL="jdbc:mysql://something.db_server.com/db_name"这就是我的客户端知道数据库服务器位置的方式。在我看到的一个JavaEE示例中//AccessJNDIInitialContext.Propertiesp=newProperties();p.put("java.nam

java - EJB 3.0 异常处理

引自EJB规范:Ifthebeanmethodencountersasystemexceptionorerror,itshouldsimplypropagatetheerrorfromthebeanmethodtothecontainer(i.e.,thebeanmethoddoesnothavetocatchtheexception).但是我不明白。这是否意味着我不应该捕获所有类型的异常(即trycatchException类)并将其作为我的应用程序异常重新抛出?一个更清晰的例子:publicvoidbeanMethodthrowsMyApplicationException{try

java - 如何将 3rd 方 JAR 打包到 EJB jar 中?

我有一个旧的J2EE应用程序(J2EE1.3),它打包成一个EAR,在EAR中,有WAR和EJBJAR。现在,其中一个EJBJAR需要引用一些第3方库JAR,那么打包这些JAR的最佳位置是什么?如何打包? 最佳答案 它们放在ear文件的根目录中,或者您可以创建一个lib目录来存储它们。任何需要引用它们的项目(EJB或WAR)都必须将它们包含在类路径:list文件。耳内容物-log4j.jar-lib-commons-lang.jar-MyEJBProj.jar-MyWAR.warMyEJBProj内容-classes-META-IN

java EJB : The import javax. 无法解析 ejb

我正在阅读WebSphereApplicationServerCommunityEdition入门一书。我使用EclipseEE创建了一个EJB项目。importjavax.ejb.Local;错误:无法解析导入的javax.ejb我不知道为什么我不能导入这个类。谢谢 最佳答案 可能问题下的评论已经回答了这个问题,但以防万一需要澄清:1)在Eclipse中,右击项目-->属性-->java构建路径2)点击添加外部JAR3)添加c:\glassfish4\glassfish\lib\javaee.jar(这个JAR的目录路径当然可以不

java - 在 EJB 3 和设计模式中使用客户端 jar

我是EJB3的新手,对Google没有提供满意答案的一些疑问感到很困惑。我正在尝试创建一个框架,其中包含我的其他应用程序可以使用的一些基类和一些实用方法。所有应用程序都将部署在同一台服务器上。当我试图在eclipse中创建一个新的EJB3.0项目时,它会询问我是否也想创建一个客户端jar。这个客户端jar有什么作用?我的ejbmodule作为EAR文件的一部分添加。那么我真的需要这个客户端jar吗?我需要同时创建本地和远程接口(interface)吗?或者只是远程接口(interface)就可以了?我决定将所有接口(interface)保留在名为projCommon的项目中,并将bea

java - 当您可以实现 Web 服务 (SOA/REST) 时,用 RMI 实现 EJB 仍然有用吗?

这听起来可能类似于this,但事实并非如此。我对EJB和RMI比较了解,而且我在SOA下使用Web服务也有一段时间了。我想知道为什么使用EJB在RMI下公开远程接口(interface)而不是发布Web服务(SOA/REST,但主要是SOA)是有用的。我不是在问哪个更好,我只是想知道一个很好的理由,说明为什么我更愿意通过Web服务实现具有远程接口(interface)的EJB。我浏览了很多网页,但似乎都过时了。到目前为止,我所知道的是,在与Java遗留系统集成时,EJB公开远程接口(interface)仅比WS更好。如果我想管理事务,我可以使用本地接口(interface)实现EJB。

java - JBoss 启动时调用 EJB 中的方法

这个问题在这里已经有了答案:Eager/autoloadingofEJB/loadEJBonstartup(onJBoss)(2个答案)关闭6年前。我正在寻找部署在JBoss上的EJB中的入口点。Servlets有load-on-startup标签用于它的web.xml。我正在为EJB搜索类似的init()功能。

java - 将@Scoped 与EJB 一起使用有什么意义?

通常我使用@RequestScoped或@SessionScoped(来自javax.enterprise.context)来注入(inject)对象(例如在人脸中beans)使用@Inject。我也在使用EJB。据我了解,一组无状态EJB副本(池)用于注入(inject)对象。存在多个副本的原因是为了确保不会同时访问一个EJB实例。在谈到有状态EJB时(同样是我所理解的),其中一个实例绑定(bind)到具体的注入(inject)点。它们是使用@EJB注入(inject)的(也是无状态的)。我经常可以在网络上看到将@Stateless或@Stateful与@Scoped结合使用的示例。