JCA:如何将RAR添加到EAR

时间:2016-08-30 10:32:25

标签: java java-ee jca

美好的一天。 需要有关在EAR项目中集成资源适配器RAR的帮助。

环境:Windows 10,Wildfly 10,Eclipse neon

整体架构是最简单的。适配器仅包含入站模块。它接收消息并在消息驱动Bean中发送它们。

我创建了一个资源适配器(这是我的第一次体验)。 我将适配器本身和消息驱动Bean放在rar存档(测试项目)中。我将rar部署到服务器。 一切正常,生活美好。

我尝试将RAR连接到目标系统。 RAR没有变化。就在Connection项目的Eclipse设置中,我说它不再是一个独立的项目,而是它是企业项目的一部分。

我生成EAR并尝试使用RAR。我在服务器上部署EAR ...并且错误发生

00:05:55,548 ERROR [org.jboss.as.controller.management-operation] WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" =>"Monro.ear")]) - failure description: {"WFLYCTL0180: Services with missing/unavailable dependencies" =>["jboss.deployment.subunit.\"Monro.ear\".\"QSSensor.rar\".component.QSSMessageBean.CREATE is missing [jboss.ra.QSSensor]"]} 
00:05:55,630 INFO [org.jboss.as.controller] WFLYCTL0183: Service status report WFLYCTL0184:
New missing/unsatisfied dependencies: service jboss.ra.QSSensor (missing) dependents: [service jboss.deployment.subunit."Monro.ear"."QSSensor.rar".component.QSSMessageBean.CREATE]

启动资源适配器。我在日志中看到了初始化方法。但是Endpoin并没有开始,因为MDB缺席。消息驱动Bean的代码是原始的。

@MessageDriven( messageListenerInterface = IQSSListener.class, 
                activationConfig = { @ActivationConfigProperty(propertyName = "port", propertyValue = "29009") })
@ResourceAdapter(value="QSSensor")
public class QSSMessageBean implements IQSSListener{
    private static Logger log = Logger.getLogger(QSSMessageBean.class.getName());

    public QSSMessageBean() { ; }

    @Override   
    public void onMessage(IQSSMessage theMessage) {
        log.info("I HAVE GOT MESSAGE: "  + theMessage.message() );
    }
}

有人可以帮助诊断问题吗?为什么消息驱动Bean无法启动?

0 个答案:

没有答案