1

我想知道是否可以在 jca 适配器中获取对 ejb3 本地业务接口的引用?

资源适配器和 ejb.jar被打包到同一个.ear. 应用程序在带有 ejb3 功能包的 WebSphere AS 6.1 下运行。

我曾尝试将其ejblocal:<full_class_name_of_local_interface>用作 JNDI 名称,但没有成功。

4

1 回答 1

2

您尝试做的可能在概念上是错误的。JCA 适配器不应该依赖于 EJB——JCA 适配器不应该查找 EJB。

但是 JCA 适配器适用于入站出站连接。让 JCA 连接器与 EJB(入站连接)通信的正确方法是通过消息驱动 bean ( MDB )。

  1. JCA 适配器定义了一个将用于通信的接口。
  2. 然后一个自定义的 MDB 可以实现这个接口,并且可以接收来自适配器的入站请求。

我同意在这种情况下,“消息驱动 bean”这个名称有点误导。自定义 MDB 真的很像 EJB,并接收来自 JCA 连接器的调用。与消息或异步处理无关。如果您希望自定义 MDB 然后可以查找或让其他 EJB 注入来委派处理。

最好看的文档是“使用 J2EE 连接器架构 1.5 创建资源适配器”。它提供了入站和出站连接的示例。相应的代码可以在 SDK 附带的 J2EE 示例中找到。

于 2010-03-15T18:52:26.130 回答