Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JBoss 6.3版本上的IBM MQ资源适配器_Java_Jboss_Ibm Mq - Fatal编程技术网

Java JBoss 6.3版本上的IBM MQ资源适配器

Java JBoss 6.3版本上的IBM MQ资源适配器,java,jboss,ibm-mq,Java,Jboss,Ibm Mq,我第一次尝试在JBoss中使用IBMMQ适配器(即使是第一次使用JBoss)。我们正在将应用程序从WebSphere7迁移到JBoss 6.3。为此,我需要配置我们在IBMWebSphere上使用的相同MQ。因此,我开始配置IBM资源适配器。下面是standalone.xml文件配置。 下面的配置工作正常,但是我无法使用代码(QueueConnectionFactory)context.lookup(“java:/comp/env/serviceQCF”)获取QueueConnectionFac

我第一次尝试在JBoss中使用IBMMQ适配器(即使是第一次使用JBoss)。我们正在将应用程序从WebSphere7迁移到JBoss 6.3。为此,我需要配置我们在IBMWebSphere上使用的相同MQ。因此,我开始配置IBM资源适配器。下面是standalone.xml文件配置。 下面的配置工作正常,但是我无法使用代码
(QueueConnectionFactory)context.lookup(“java:/comp/env/serviceQCF”)
获取QueueConnectionFactory,因为它会引发类转换异常(com.ibm.mq.connector.outbound.ConnectionFactoryImpl无法转换为javax.jms.QueueConnectionFactory)

当我使用连接定义class name=“javax.jms.QueueConnectionFactory”jndi name=“java:/comp/env/serviceQCF”enabled=“true”pool name=“ConnectionClass”,*JBoss正在抛出异常

javax.naming.NameNotFoundException:comp/env/serviceQCF--服务jboss.naming.context.java.comp.env.serviceQCF*

我尝试过使用ConnectionFactory但结果相同(名称未找到异常)

但是没有运气


请帮助我。

我认为在尝试将目标“java:/comp/env/serviceQCF”与资源适配器一起使用之前,您应该先定义它。

这里需要注意的几点。JMS规范具有特定于域的:

QueueConnectionFactory
TopicConnectionFactory
ConnectionFactory
以及非特定领域:

QueueConnectionFactory
TopicConnectionFactory
ConnectionFactory
服务器配置文件中的代码类型应该正确。请注意,您可以查看IBM MQ JCA中META-INF文件夹中打包的ra.xml文件中的以下类型:

com.ibm.mq.connector.outbound.ManagedTopicConnectionFactoryImpl
com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl
com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl
具体来说,对于QueueConnectionFactory的转换,您应该使用ManagedQueueConnectionFactoryImpl


请注意,IBM MQ JCA托管对象不能用于远程客户端。只能从加载IBM MQ JCA的JVM访问它们。

正如Doug指出的那样,您必须使用ManageQueueConnectionFactoryImpl,但对我来说这还不够。我还必须将以下内容添加到standalone.xml中。没有它,我无法将IBM QueueConnectFactoryImpl类强制转换为JMS QueueConnectionFactory,即使该类实现了该接口

<subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0"/>


您能否指定如何声明QM/SSL详细信息?在JBoss EAP 7.2上,需要添加以下内容: