2015-10-14 69 views
0

這是我的資源適配器,但我必須通過初始上下文設置而不使用此資源適配器。查找我的初始上下文設置如下:遠程客戶機(JVM另一個)JBOSS 7.1帶有初始上下文的IBM MQ配置

<resource-adapter> 
    <archive> 
     wmq.jmsra.rar 
    </archive> 
    <transaction-support>NoTransaction</transaction-support> 
    <connection-definitions> 
     <connection-definition class-name="com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl" jndi-name="java:jboss/CONFACTORY1" pool-name="CONFACTORY1"> 
      <config-property name="port"> 
       1234 
      </config-property> 
      <config-property name="hostName"> 
       172.16.70.2 
      </config-property> 
      <config-property name="channel"> 
       SYSTEM.DEF.SVRCONN 
      </config-property> 
      <config-property name="transportType"> 
       CLIENT 
      </config-property> 
      <config-property name="queueManager"> 
       QUEUEMGR 
      </config-property> 
     </connection-definition> 
    </connection-definitions> 
    <admin-objects> 
     <admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/JMSQUEUE" pool-name="MQ.QUEUE.NAME"> 
      <config-property name="baseQueueName"> 
       JMSQUEUE 
      </config-property> 
      <config-property name="baseQueueManagerName"> 
       QUEUEMGR 
      </config-property> 
     </admin-object> 
    </admin-objects> 
</resource-adapter> 

final Properties env = new Properties(); 
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl"); 
env.put(Context.PROVIDER_URL, "remote://172.16.70.2:1234"); 

// env.put(Context.SECURITY_PRINCIPAL, "admin"); 
// env.put(Context.SECURITY_CREDENTIALS, "[email protected]"); 
InitialContext context = new InitialContext(env); 

回答

0

查找通過JNDI IBM MQ組件,不是由IBM MQ JCA的支持。 IBM連接工廠和目標只能從加載IBM MQ JCA的JVM訪問。

+0

因此,您的意思是沒有資源適配器,我無法遠程連接到IBM MQ? – Goutham

+0

IBM MQ JCA爲本地或遠程的MQ提供對加載IBM MQ JCA的JVM的訪問。此JVM不應通過JNDI導出IBM MQ連接工廠和目標。 –