当前位置: 首页 > 知识库问答 >
问题:

如何从另一个EAR访问在一个EAR中定义的EJB

奚晟
2023-03-14

基本上,我有一种情况,我必须在一个耳朵内访问JAR中声明的EJB,而不是在另一个耳朵中访问WAR。两个EAR都部署到同一个WebLogic托管服务器(同一个域)。Java代码中没有用于该EJB的注释。在ejbjar中。xml它被定义为会话无状态容器bean。在WebLogicEJBJAR中。xml指定了本地jndi名称。我尝试使用InitialContext查找这个bean,并从该接口获取LocalHome接口和-Home接口。无论我在上下文查找中尝试使用什么作为JNDI名称,我都会得到“javax.naming.NameNotFoundException:在尝试查找时”。此外,对于用Java编程的bean,还有本地和本地Home接口。我做错了什么?

共有1个答案

华永新
2023-03-14

您应该在不同耳朵的ejbs之间使用远程接口。一些应用服务器可能允许你在耳朵之间使用本地接口,但是它充满了困难(例如类路径问题),而且到目前为止不是最好的主意。

 类似资料:
  • 我试图从另一个EAR调用部署在EAR中的远程服务时遇到了问题。我没有为我的EJB指定任何名称,不管它们是@本地还是@远程,所以只需使用注释并通过@EJB注入它。 这就是我所拥有的: > 耳朵/ lib/任何lib jar(包括远程服务B的API jar) 战争 服务A调用远程服务B的ejb模块 耳朵B/ lib/任何API lib jar 其他信息:服务B实现@本地和@远程接口,服务A通过以下方式

  • 我在同一个weblogic服务器上部署了两个项目: 带有EJB(@本地,@无状态)的耳朵存档 一个战争档案 我想从war档案中的一个类访问EJB。这通常是可能的吗?怎样

  • 我有两个码头集装箱。一个是基于标准的MariaDB图像。这个容器被命名为“mariadb”,里面有一个叫做“fi”的数据库。fi db内部有几个表,每个表都有几行数据。使用DataGrip或任何其他数据库查看软件,我可以成功地访问和查询这个数据库,并使用端口3306在本地主机上调用它。 按照下面的建议对连接字符串进行了更改,如上图所示。现在使用命令“run-i-p8080:8080--link m

  • 我正在使用Glassfish 4。我有一个耳朵,它有一个战争和一个罐子(与EJB)。 我想从WAR中调用EJB,但不确定是否需要使用本地或远程接口。 在我的罐子里,我的豆子是这样的: 在我的WAR中,我有一个web服务,它看起来如下所示: 这两个都包装成一个耳朵。 当我调用WebService方法时,我得到一个AccessLocalException: 首先: 这是调用EJB的正确方法吗。EAR中

  • 我是java新手,我不知道如何从另一个类访问变量 我正在尝试编写一个代码来发送带有未存储在本地的附件的邮件。我想访问SendMail类中ExcelFile类中编写的变量 如何在另一个类中访问excelFileAsByte并发送邮件而不将其存储在本地。我可以使用addBodyPart和ByteArrayResource将文件添加为附件吗。

  • 尝试从同一命名空间中的另一个服务连接到一个服务。使用ClusterIP创建服务。创建服务后使用该Ip访问服务。请求有时成功,有时失败,我看到两个pod都启动并运行。以下是服务配置