小编Yun*_*Yun的帖子

Weblogic找不到具有“正确” JNDI名称的资源适配器进行绑定

我试图将消息驱动的Bean与Weblogic 10.3.5上的Oracle JCA文件适配器(包含在SOA套件中)绑定。这样,当任何.txt文件移动到特定目录时,我的MDB都可以得到通知。

启动支持SOA功能的Weblogic域后,将自动部署文件适配器。在Weblogic控制台上,我可以看到文件适配器已部署为“资源适配器”,运行状况为“确定”,状态为“活动”,如下所示:

Weblogic中已部署的文件适配器

我也运行了文件适配器的测试,并且都通过了:

在此处输入图片说明

因此,我认为文件适配器已正确部署并且应该可以正常工作。

然后我的消息驱动bean代码如下所示:

import java.util.logging.Logger;
import javax.ejb.MessageDriven;
import javax.resource.ResourceException;
import javax.resource.cci.MessageListener;
import javax.resource.cci.Record;

@MessageDriven
public class FileAdapterClientMDB implements MessageListener {

    private Logger logger = Logger.getLogger(FileAdapterClientMDB.class.getName());

    public FileAdapterClientMDB() {

    }

    @Override
    public Record onMessage(Record record) throws ResourceException {
        logger.info("Received record: " + record);
        return record;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的ejb-jar.xml文件的内容:

<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:ejb="http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" version="3.0">
  <display-name>MockEJB</display-name>
  <enterprise-beans>
    <message-driven>
      <description>EMessage Driven Bean as File Adapter Client</description>
      <display-name>FileAdapterClientMDB</display-name>
      <ejb-name>FileAdapterClientMDB</ejb-name>
      <ejb-class>com.test.FileAdapterClientMDB</ejb-class>
      <messaging-type>javax.resource.cci.MessageListener</messaging-type>
      <transaction-type>Container</transaction-type>
      <activation-config>
        <activation-config-property> …
Run Code Online (Sandbox Code Playgroud)

ejb weblogic jndi adapter jca

5
推荐指数
1
解决办法
5199
查看次数

标签 统计

adapter ×1

ejb ×1

jca ×1

jndi ×1

weblogic ×1