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 » IBM MQ Java / JMS » JMS and syncpoint

Post new topic  Reply to topic
 JMS and syncpoint « View previous topic :: View next topic » 
Author Message
JohnRodey
PostPosted: Wed Jan 04, 2006 6:12 am    Post subject: JMS and syncpoint Reply with quote

Centurion

Joined: 13 Apr 2005
Posts: 103

In order to use syncpoint with JMS would I need to use transactions, therefore need to purchase transactional clients for all my client machines?

Or am I totally off on how to use syncpointing with JMS?

thanks
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Jan 04, 2006 6:39 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

You only need the transactional client for two-phase transactions, not for single resource transactions.

So if you need to involve both a database transaction and an MQ syncpoint, then you need the transactional client.

If you only need syncpoint, you don't need the transactional client.

Or use the new messaging provider in WAS v6 (just to beat fjb_saper to it).
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Wed Jan 04, 2006 2:28 pm    Post subject: Reply with quote

Grand High Poobah

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

Thanks Jeff
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
mbw
PostPosted: Thu Jan 05, 2006 3:25 am    Post subject: Reply with quote

Novice

Joined: 09 Dec 2004
Posts: 11

The Trasnactional Client License purchase is really needed when you want to do transactional work on a client (i.e. tcp/ip) connection.

If you are using a bindings connection then the 'normal' client should be ok.

To co-ordiante say a database update and MQ, with MQ as the transaction manager is only available in a bindings connection. And this is used only with the Java Classes not JMS.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Thu Jan 05, 2006 4:35 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

mbw wrote:
The Trasnactional Client License purchase is really needed when you want to do transactional work on a client (i.e. tcp/ip) connection.

If you are using a bindings connection then the 'normal' client should be ok.

To co-ordiante say a database update and MQ, with MQ as the transaction manager is only available in a bindings connection. And this is used only with the Java Classes not JMS.


None of this is accurate.

You can do syncpoint with MQ with the plain Java client. You can do a syncpoint with MQ with *any* MQ Client - including with JMS.

A bindings connection does not use ANY client at all. You can't establish a bindings connection on a machine that does not have a Queue Manager on it, and you can only establish a bindings connection to queue managers that are on the same machine as your program.

The Transactional Client was built explicitly to allow a client(tcp/ip) connetion to coordinate database updates and MQ transactions. And it can be used, as far as I know, with JMS as well as with the WebSphere MQ API for Java.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
mvic
PostPosted: Wed Jan 11, 2006 5:10 pm    Post subject: Re: JMS and syncpoint Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

JohnRodey wrote:
In order to use syncpoint with JMS would I need to use transactions, therefore need to purchase transactional clients for all my client machines?

Or am I totally off on how to use syncpointing with JMS?


I imagine your questions re. the Extended Transactional Client is answered - but there are a few points to be made re. MQI syncpoints (also known as local transactions, local units of work or MQI transactions) as they relate to JMS session transacted/acknowledge modes.

Actually MQI syncpoints are used for the acknowledgement modes as well as for transacted mode. Besides transacted mode, the simplest case is client-acknowledge mode. Although the API semantics are different, the MQI semantics (upon which MQ JMS is built) are pretty much equivalent.

For transacted sessions, Session.commit and Session.rollback are used to commit or rollback all work on the session since the last point of consistency.

For client-ack sessions, Msg.acknowledge and Session.recover are (equivalently) used to commit or rollback all work on the session since the last point of consistency.

The semantics closest to MQI's MQCMIT and MQBACK are Session.commit and Session.recover - ie. use a transacted session. The client-ack semantics are a bit confusing (I find) because the "commit" activity is via a method on the message object, whereas the effect is applicable to the whole session.

The other acknowledgement modes use a more automatic approach to syncpoints from what I can see. Explicitly, they don't give you the level of control that is given by transactional or client-ack modes.

I hope this helps
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 » IBM MQ Java / JMS » JMS and syncpoint
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.