0

我在部署连接到 Tibco RV 资源适配器的 MDB 时遇到问题,但在正确部署 RA 时,MDB 引发了我多次尝试后仍无法解决的问题。

这就是我试图让我的 MDB 部署到资源适配器的原因。

  1. 我已经部署了我的 RA (tibco-adapter-ra2.rar):它是一个集成了 TIBCO RV 中间件的 RA。在附件中可以看到 tibco-adapter-ra2 maven 项目的 rar 文件)
  2. RA 在另一个 maven 项目中有它的逻辑,我将其命名为 tibco-adapter-jar(也附有项目)
  3. 还有第二个 maven jar 项目 (tibco-adapter-msg-listener),仅包含 MessageListener,它是 tibco-adapter-jar 项目的依赖项

到目前为止,没有问题。我可以部署 Tibco Adapter RA,而无需在standalone.xml 文件中进行任何进一步的配置。

问题(错误 1):我无法部署使用 tibco-adapter-ejb 制作的 tibco-adapter-ear(它包含连接到 Tibco Adapter RA 的 MDB,它们都已连接),原因如下错误:

MDB 使用 Annotation 来引用 Message Listener 接口:

import com.ericsson.jee.sep.tibco.adapter.api.TibcoRvMessageListener; 
// from tibco-adapter-msg-listener JAR, so also tibco-adapter-ejb refers that library
     @MessageDriven(name="TibcoRvMDB",
      messageListenerInterface=TibcoRvMessageListener.class, 
              activationConfig={})
    @ResourceAdapter(value="tibco-adapter-ra2.rar")
    public class TibcoRvMessageBean implements TibcoRvMessageListener
    ...

原因:org.jboss.msc.service.ServiceNotFoundException:服务服务 jboss.ejb.default-resource-adapter-name-service 未找到(请参阅 Error1_Deployment_EAR_1.txt 以获得完整的堆栈跟踪)

我还standalone.xml使用以下配置编辑了:

...
<subsystem xmlns="urn:jboss:domain:ejb3:1.5">
              ...
            <mdb>               
              <resource-adapter-ref resource-adapter-name="tibco-adapter-ra2.rar"/>
              ...
          </mdb>
...
<subsystem xmlns="urn:jboss:domain:resource-adapters:1.1">
        <resource-adapters>
              <resource-adapter id="tibco-resource-adapter">
                  <archive>tibco-adapter-ra2.rar</archive>
              </resource-adapter>
        </resource-adapters>
    </subsystem>

此配置后的 ERROR 2 为:

原因:java.lang.IllegalStateException:JBAS014521:在资源适配器 tibco-adapter-ra2 中找不到类型为 com.ericsson.jee.sep.tibco.adapter.api.TibcoRvMessageListener 的消息侦听器(有关完整的堆栈跟踪,请参阅 Error2_Deployment_EAR_2.txt )。

TibcoRvMessageListener不是传统的 JMS 消息侦听器,而是 Tibco RV 消息侦听器。

我在过去看到过类似的问题,但一些建议已经被应用(见standalone.xml配置),但没有解决问题。

我真的需要一个支持,因为我无法找到前进的道路。

我在哪里做错了?

亲切的问候, Pierluigi

4

1 回答 1

0

我认为我的问题与这个问题非常相似:

[无法在 Jboss 6 上部署 Maven jar (MDB)

但基本上问题出在错误的 Maven 结构中。我已经解决了将我的 Maven 项目结构与 Github 上可用的项目结构对齐的问题:

[ https://github.com/timothysparg/JCA-Inflow-Wildfly][1]

在我的原始项目中,我尝试分别部署 RA 和 EAR,而 GitHub 项目显示了另一种方法:一个包含 RAR 和 EJB 的单个 EAR,其中 JAR(包含 RAR 的业务逻辑)包含在提供的依赖项中。这就是我的项目的诀窍。

于 2016-08-24T14:07:04.117 回答