users@glassfish.java.net

Re: wmq.jmsra.rar IBM MQ resource adaptor glassfish MDB deploy problem

From: <glassfish_at_javadesktop.org>
Date: Mon, 15 Feb 2010 21:55:10 PST

----- Further Query About Transaction support ---------------------

It seems overkill to require the WebSphere MQ Extended Transaction client when the only transactional resource committed by my MDB is the consumption of a message from the remote queue. I want local transactions to guarantee processing of messages, in order to commit a message consumption only if my MDB completes validation and error logging or completes an update to a non-authoritative ldap replica that is non-transactional. The ldap server is a non-authoritative replica of valid data sourced from the authoritative source that is the producer of messages. I need guarenteed serialised updates in the absence of infra failures. Other technopolitical constraints resulted in an out of bound recovery strategy from error logs in the presence of failures, based on resynchronising whole ldap records, but this also meant there is no other transactional resources like an error reponse queue that demand distributed transactions.

When I try --transactionsupport LocalTransaction in asadmin create-connector-connection-pool, I get exceptions with wmq-jmsra specific error codes that ask for the extended client to be installed.

I understand, local queues may use Bindings mode without distributed transactions. Client mode is required for remote queues like mine. Documentation suggest client mode only requires extended transaction support if the extended client jar file (com.ibm.mqetclient.jar) is on the classpath. Yet my experience with --transactionsupport LocalTransaction when I have no such jar file, suggests otherwise.

I have question for GlassFish community. wmq.mqjms.rar deploys a jar file, com.ibm.mqjms.jar that contains the following implementation classes:--

com/ibm/mq/jms/MQConnectionFactory.class

com/ibm/mq/jms/MQQueue.class
com/ibm/mq/jms/MQQueueConnectionFactory.class
com/ibm/mq/jms/MQQueueConnectionFactoryFactory.class

IMS RRS 2 phase option
com/ibm/mq/jms/MQRRSQueueConnection.class
com/ibm/mq/jms/MQRRSQueueConnectionFactory.class
com/ibm/mq/jms/MQRRSQueueConnectionFactoryFactory.class

XA support
com/ibm/mq/jms/MQXAQueueConnection.class
com/ibm/mq/jms/MQXAQueueConnectionFactory.class
com/ibm/mq/jms/MQXAQueueConnectionFactoryFactory.class


My question is what property options in create-resource-adapter-config are common to all adaptors and what are specific only to genericjmsra and would need to be expliclity implemented by wmq.mqjms.rar to be supported?

Specifically is it possible to force transaction support option within any adaptor using
./asadmin create-resource-adapter-config --property SupportsXA=false:ConnectionFactoryClassName=com.ibm.mq.jms.MQConnectionFactory:QueueConnectionFactoryClassName=com.ibm.mq.jms.MQQueueConnectionFactory:QueueClassName=com.ibm.mq.jms.MQQueue wmqjmsra

Are these properties specific to genericjmsra?

How else can I force local transactions in adaptor?
[Message sent by forum member 'kennwoods' (ken.woods_at_digitalidols.com)]

http://forums.java.net/jive/thread.jspa?messageID=386906