Jms JBOss for MQ中的JNDI绑定

Jms JBOss for MQ中的JNDI绑定,jms,jndi,ibm-mq,jboss6.x,Jms,Jndi,Ibm Mq,Jboss6.x,我需要一些帮助来配置JBoss以使用MQ。我已经使用IBM MQ Explorer在MQ中创建了初始上下文,并为所有绑定(如file:/C:/jndi)提供了一个本地目录。我已经为这个初始上下文创建了一个连接工厂。现在JBoss文档说要像这样绑定 <connection-definition class-name="com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl" jnd

我需要一些帮助来配置JBoss以使用MQ。我已经使用IBM MQ Explorer在MQ中创建了初始上下文,并为所有绑定(如file:/C:/jndi)提供了一个本地目录。我已经为这个初始上下文创建了一个连接工厂。现在JBoss文档说要像这样绑定

    <connection-definition class-name="com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl" 
                    jndi-name="java:jboss/MQ.CONNECTIONFACTORY.NAME" 
                    pool-name="MQ.CONNECTIONFACTORY.NAME">

我想我遗漏了一些要点。如何告诉Jboss我的InitialContext绑定在一个目录中。大多数组合我都试过了。可能是我没有正确理解这个概念。有什么建议吗

当我试图从我编写的测试servlet访问这个MQ.CONNECTIONFACTORY.NAME时,我得到了javax.naming.NameNotFoundException。如果我在JavaSE环境中遵循相同的步骤,我就能够成功地建立连接。我是应用服务器新手,这个问题可能很幼稚


关于

通过MQExplorer创建的资源的描述表明,这些资源已被放入由文件系统上下文支持的JNDI中。这很好,但理论上现在需要做的是让JBOSS读取JNDI上下文中的对象,而不是JBOSS提供的通常的JNDI提供者。连接定义提取中的设置使用标准JBOSS JNDI上下文

作为将JBOSS与WebSphere MQ Resoruce适配器一起使用的示例,请看这里


这链接到一组示例定义,这些定义在JBOSS JNDI上下文中存储WMQ JMS管理的对象。

这是一个重要的问题。我用弹簧来做这个,像这样:


文件:${my.config.path}/bindings
org.jboss.naming:org.jboss.naming.remote.client
com.sun.jndi.fscontext.RefFSContextFactory
${mdb.user.name}
${mdb.user.pass}
错误的
但是,使用上面的配置,我们绕过了资源适配器。否则没有问题,但它会阻止事务加入JBoss事务,因此JMS消息会立即发送,而不是使用事务提交。我还没有找到解决办法

用于读取.bindings文件的com.sun.jndi.fscontext.RefFSContextFactory可以在以下依赖项中找到:


com.sun.messaging.mq
fscontext
4.6-b01

您的链接是针对JBOSS的旧版本的,没有解释如何使用存储为文件的JNDI上下文,因此我怀疑它是否有用。