我想知道是否可以在 jca 适配器中获取对 ejb3 本地业务接口的引用?
资源适配器和 ejb.jar
被打包到同一个.ear
. 应用程序在带有 ejb3 功能包的 WebSphere AS 6.1 下运行。
我曾尝试将其ejblocal:<full_class_name_of_local_interface>
用作 JNDI 名称,但没有成功。
我想知道是否可以在 jca 适配器中获取对 ejb3 本地业务接口的引用?
资源适配器和 ejb.jar
被打包到同一个.ear
. 应用程序在带有 ejb3 功能包的 WebSphere AS 6.1 下运行。
我曾尝试将其ejblocal:<full_class_name_of_local_interface>
用作 JNDI 名称,但没有成功。
您尝试做的可能在概念上是错误的。JCA 适配器不应该依赖于 EJB——JCA 适配器不应该查找 EJB。
但是 JCA 适配器适用于入站和出站连接。让 JCA 连接器与 EJB(入站连接)通信的正确方法是通过消息驱动 bean ( MDB )。
我同意在这种情况下,“消息驱动 bean”这个名称有点误导。自定义 MDB 真的很像 EJB,并接收来自 JCA 连接器的调用。与消息或异步处理无关。如果您希望自定义 MDB 然后可以查找或让其他 EJB 注入来委派处理。
最好看的文档是“使用 J2EE 连接器架构 1.5 创建资源适配器”。它提供了入站和出站连接的示例。相应的代码可以在 SDK 附带的 J2EE 示例中找到。