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 » IBM's JMS Implementation - Dead Letter Queue access

Post new topic  Reply to topic
 IBM's JMS Implementation - Dead Letter Queue access « View previous topic :: View next topic » 
Author Message
WingCommanderBadger
PostPosted: Wed Apr 04, 2007 3:51 am    Post subject: IBM's JMS Implementation - Dead Letter Queue access Reply with quote

Apprentice

Joined: 06 Sep 2005
Posts: 32
Location: London, UK

I'm currently working with a client who will remotely access our Queue Manager using JMS. However, during testing we have noticed that there appears to be some default behaviour built into IBM's JMS Implementation regarding Dead Letter Queues:

* There seems to be a default backout threshold of 20
* After the threshold is met, an attempt is made to put the message on to the default dead letter queue

Our issue is that our client has queried whether he can change this behaviour, as he wishes to use different values for the threshold and the queue messages are backed out to. From what I can see, he cannot change either of these values, but was wondering if anyone else out there had successfully attempted such a thing.

We are using MQ v6.0.2.0 and the associated JMS libraries.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Apr 04, 2007 3:58 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

How it can be changed depends quite a lot on what kind of environment the remote application is running under.

If it's under an app server (which I would hope, given that JMS is a Java Enterprise specification best used in a Java Enterprise container), then you can configure the properties of the various components in the app server to control this.

Otherwise, look at the MQ documentation and the "Backout Retry Queue".
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
WingCommanderBadger
PostPosted: Wed Apr 04, 2007 4:03 am    Post subject: Reply with quote

Apprentice

Joined: 06 Sep 2005
Posts: 32
Location: London, UK

Our client wishes to use Weblogic App Server and claims that he cannot configure these values. What relevant part of the JMS API is exposed to an App Server that is not exposed to a programmer who just wishes to use a standalone JMS Client?
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Apr 04, 2007 4:12 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

It's not a matter of what parts of the API are exposed, it's a matter of whether or not the container services are available or not.

I assume your client is trying to GET messages, and then throwing errors when the messages can't be processed. The backout/retry under the JEE/J2EE situation is controlled using the settings on the MDB and in the JNDI configuration.

I'm sure someone who remembers these things off the top of their head will be along in a bit.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Wed Apr 04, 2007 1:44 pm    Post subject: Reply with quote

Grand High Poobah

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

You need following configurations:

A) Bo threshold a set on queue, a > 0
B) Retry threshold b set on MDB with b > a
C) If the backout queue has not been specified on the queue the message is put to the DLQ RC 2063 or something like it...

Finally you need to remember that using IBM WebSphere Application Server the MDB handles this automatically for you.

With WebLogic you might have to add that intelligence into the MDB code...

Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
WingCommanderBadger
PostPosted: Thu Apr 05, 2007 12:32 am    Post subject: Reply with quote

Apprentice

Joined: 06 Sep 2005
Posts: 32
Location: London, UK

OK, this is interesting but we get the same behaviour even when we don't use WebLogic and use a standalone Java/JMS Client instead. One thing I forgot to mention previously was that the Dead Letter Queue is not actually specified at all in our JNDI repository so I'm wondering where this info is gathered from. I strongly suspect that IBM have built in some (possibly undocumented) functionality into their JMS implementation that is not easily changed - after decompiling the libraries (sorry IBM) I can see some evidence that this is the case. I was just hoping that someone would confirm this. I think the next step is to post to IBM directly.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Thu Apr 05, 2007 3:27 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

It's standard behavior for a message that has crossed the backout threshold on a queue that does not have a backout queue defined, for the message to either be discarded if non-persistent or placed on the DLQ If persistent.

This is regardless of the API.

Change your queue to specify a backout queue.
_________________
I am *not* the model of the modern major general.
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 » IBM's JMS Implementation - Dead Letter Queue access
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.