|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MQXAConnectionFactory |
« View previous topic :: View next topic » |
Author |
Message
|
PEPERO |
Posted: Thu Jul 21, 2011 12:04 am Post subject: MQXAConnectionFactory |
|
|
Disciple
Joined: 30 May 2011 Posts: 177
|
Hi;
I've defined a message flow using the JMSINPUT node and JMSOUTPUT node. I'me going to use the Websphere MQ as the JMS provider. The WMQ and WMB are on the same machines so the initial context used for the bindings is of the file system type.
When i'm not using the transacted JMS message transformation every thing is ok. The remote client sends the JMS message to the MQ JMS provider and then the JMSINPUT node uses it.
But when i'm using the Global Transaction mode Despit of the prerequired works that must be done to enable the queue manager as an XA resource manager , when i'm trying to initial the MQConnectionFactory using
.
.
.
props.put("USEJMS11CF","true");
props.put(Context.INITIAL_CONTEXT_FACTORY,
"com.ibm.mq.jms.context.WMQInitialContextFactory");
props.put(Context.PROVIDER_URL,
"192.168.42.243:1414/SYSTEM.DEF.SVRCONN");
Context context = new InitialContext(props);
.
.
.
The returned MQ JNDI binding objects are of type MQConnectionFactory and MQQueue. No MQXAConnectionFactory is returned.
At the WMQ provider, i've defined an MQconnectionfactory object as an XA resource. I've set the XA Resource Managers XAOpenString parametere as follows :
com.sun.jndi.fscontext.RefFSContextFactory,file://C:/RU72PQ15/,,,
and the ThreadOfControl is set to "thread" but when i lookup the qmgr in the JNDI namespace at the client side it is of type MQConnectionFactory not the MQXAConnectionFactory.
So please help me. |
|
Back to top |
|
 |
lancelotlinc |
Posted: Thu Jul 21, 2011 4:48 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Jul 21, 2011 7:31 am Post subject: Re: MQXAConnectionFactory |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
PEPERO wrote: |
Hi;
The WMQ and WMB are on the same machines so the initial context used for the bindings is of the file system type.
When i'm not using the transacted JMS message transformation every thing
props.put("USEJMS11CF","true");
props.put(Context.INITIAL_CONTEXT_FACTORY,
"com.ibm.mq.jms.context.WMQInitialContextFactory");
props.put(Context.PROVIDER_URL,
"192.168.42.243:1414/SYSTEM.DEF.SVRCONN");
Context context = new InitialContext(props);
.
.
.
The returned MQ JNDI binding objects are of type MQConnectionFactory and MQQueue. No MQXAConnectionFactory is returned.
At the WMQ provider, i've defined an MQconnectionfactory object as an XA resource. I've set the XA Resource Managers XAOpenString parametere as follows :
com.sun.jndi.fscontext.RefFSContextFactory,file://C:/RU72PQ15/,,,
and the ThreadOfControl is set to "thread" but when i lookup the qmgr in the JNDI namespace at the client side it is of type MQConnectionFactory not the MQXAConnectionFactory.
So please help me. |
And you are surprised because?
Your JNDI definition does not point to the established file context now does it? See the properties used...
I believe you need to dig way deeper into the usage of the different contexts as shown in JMSAdmin...
You have absolutely no idea about what an XAOpenString parameter is as you are passing it the InitialContext information...
Also be aware that the JNDI reference that you did use (highlighted in red) is only fit for IBM demonstrations and should never be used in any type of professional runtime context.
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|