ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General IBM MQ Support » XA Connection over BINDING transport??

Post new topic  Reply to topic
 XA Connection over BINDING transport?? « View previous topic :: View next topic » 
Author Message
tfennelly
PostPosted: Wed May 20, 2009 9:20 am    Post subject: XA Connection over BINDING transport?? Reply with quote

Newbie

Joined: 20 May 2009
Posts: 9

Hi.

Is it possible to create an XA Connection over JNDI, without the Extended Client? My understanding is that is is possible to create a local XA Connection using the BINDING mode, but I can't seem to find the correct JNDI config.

I'm currently using the following JNDI config:
Code:
java.naming.provider.url=localhost:1414/SYSTEM.DEF.SVRCONN
java.naming.factory.initial=com.ibm.mq.jms.context.WMQInitialContextFactory


But I'm getting a "client connection not XA enabled" exception. I assume this is because I have not specified to use a BINDING connection in the JNDI env I supplied in the lookup and so it's trying to work in Client mode.

How do I specify the JNDI config to use Binding mode? What's the correct property name and value?

I'm using a Trial version of WMQ - v6.0.2.5. I'm running on Windows XP.

Thanks,

Tom.
Code:
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed May 20, 2009 9:31 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Don't use the WMQ Naming Provider unless you really really know exactly why.

It breaks the logical separation between MQ and JNDI, in that it provides you naming entries that exactly match the names of your MQ objects.

Secondly, the properties you provide to your Naming provider have nothing to do with the properties used by your application Queue Connection Factories. Nothing you have shown provides any information about what you are passing to your QCFS.

Thirdly, all you need for a bindings connection is the name of the local queue manager.
Back to top
View user's profile Send private message
tfennelly
PostPosted: Wed May 20, 2009 12:10 pm    Post subject: Reply with quote

Newbie

Joined: 20 May 2009
Posts: 9

Thanks for the swift reply

mqjeff wrote:
Don't use the WMQ Naming Provider unless you really really know exactly why.

It breaks the logical separation between MQ and JNDI, in that it provides you naming entries that exactly match the names of your MQ objects.


So our application uses JNDI to connect to the JMS Provider. It knows nothing about the specifics of WMQ and we'd like to keep it that way i.e. to treat WMQ the same as any other provider and to look it up in the same way, via JNDI.

One of our users encountered the one-XASession-per-XAConnection issue with WMQ and I was trying to replicate the issue locally. Before getting to that issue however, I encountered the "client connection not XA enabled" issue while trying to create the connection. I see this as a linked exception off an "unable to get XAResource" exception.

We're trying this through the WQM JCA Adapter, deployed on JBoss AS. I can see that the WMQ connection factory we're getting back from the JCA Adapter is XA enabled/aware.

I guess my question was really just if local XA binding connections were even possible without the Extended Client? Some posts I've read seem to suggest that it is, while others appear to suggest that it's not.

Does "local" mean on the same machine, or does it mean within the same VM i.e. WMQ running in the websphere server? If it means the later, which I'm inclined to think it does, then I guess I am wasting my time

mqjeff wrote:
Secondly, the properties you provide to your Naming provider have nothing to do with the properties used by your application Queue Connection Factories. Nothing you have shown provides any information about what you are passing to your QCFS.


OK, sorry about that. So we are configuring these on the JCA connection-factory config in JBoss. I didn't go into this in the original post because I thought it would just be a distraction. I need to go back and do more investigating. Sorry for wasting your time

mqjeff wrote:
Thirdly, all you need for a bindings connection is the name of the local queue manager.


Ah OK... so it is within the same VM then for "local" XA binding connections without the Extended Client?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed May 20, 2009 1:12 pm    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The queue manager does not run inside of any JVM. Nor will it likely ever. It's a collection of C-runtime OS processes.

Ergo the only viable meaning of "local" is "in the same OS instance". That OS instance may or may not be hosted in a VM, that has no bearing on anything.

I may be out of date on the WMQ Naming Provider in the context of the WMQ JCA Adapter. You should go back and review the MQ documentation on using the JCA Adapter and the JBoss documentation on this.

But again, you posted configuration information for connecting to the Naming provider, not configuration information for your application to use to create a QCF.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Wed May 20, 2009 1:25 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

tfennelly wrote:
I'm currently using the following JNDI config:
Code:

java.naming.provider.url=localhost:1414/SYSTEM.DEF.SVRCONN
java.naming.factory.initial=com.ibm.mq.jms.context.WMQInitialContextFactory

Please please use the file system JNDI provider.
The JNDI provider you used forces a client connection. This is not a binding connection and as such does not allow you to test the case you are trying to.

IMHO only the highly enlightened should use the JNDI provider you did.
There are ample reasons for a separation of naming space between the qmgr and JNDI entries. The JNDI provider you used will not allow that. The other part is that the JNDI provider you used forces you to a client connection... so no XA without the etc support jars.
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
tfennelly
PostPosted: Wed May 20, 2009 1:31 pm    Post subject: Reply with quote

Newbie

Joined: 20 May 2009
Posts: 9

Thanks again

So do I need the Extended Client to create an XA Connection when the client is running on the same OS ("locally") as the WMQ Server?
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Wed May 20, 2009 1:32 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

tfennelly wrote:
Thanks again

So do I need the Extended Client to create an XA Connection when the client is running on the same OS ("locally") as the WMQ Server?

No you don't. You need to switch JNDI provider.
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
tfennelly
PostPosted: Wed May 20, 2009 1:41 pm    Post subject: Reply with quote

Newbie

Joined: 20 May 2009
Posts: 9

fjb_saper wrote:
tfennelly wrote:
Thanks again

So do I need the Extended Client to create an XA Connection when the client is running on the same OS ("locally") as the WMQ Server?

No you don't. You need to switch JNDI provider.


Ah excellent... thanks for that. I haven't used that before, but look forward to trying it out.

Thanks for your patience guys!!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General IBM MQ Support » XA Connection over BINDING transport??
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.