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 » how to implement DLQ using JMS client

Post new topic  Reply to topic
 how to implement DLQ using JMS client « View previous topic :: View next topic » 
Author Message
shilps
PostPosted: Mon Apr 15, 2002 2:48 pm    Post subject: Reply with quote

Newbie

Joined: 14 Apr 2002
Posts: 7
Location: GEFA

Hi all,
I m stuck with a prob. I have to implement 2 things.....
One is the atomic transaction and the other one is to keep track of undeliver msgs.
For the second task i want to implement the DLQ. but dont know how. I m using MQseries thru JMS client which is called thru EJB. Can u plz tell me that the DLQ we r creating will be on the same side as our local Q or on the other side. What else we need to do.We are developing the application using WSAD.
Also when the response is coming,and if the n/w is down then the msg is lost.How can we save those msg?Hope to get a soon reply....Thanx in advance...
Back to top
View user's profile Send private message
kolban
PostPosted: Mon Apr 15, 2002 4:08 pm    Post subject: Reply with quote

Grand Master

Joined: 22 May 2001
Posts: 1072
Location: Fort Worth, TX, USA

The MQSeries DLQ is managed by the MQSeries queue manager itself. There is nothing you need do to activate it or otherwise use it. As for the network going down and messages being lost ... I sure hope not. That is one of the basic reasons for MQSeries's existence is to prevent exactly this kind of situation.
Back to top
View user's profile Send private message
shilps
PostPosted: Tue Apr 16, 2002 5:05 am    Post subject: Reply with quote

Newbie

Joined: 14 Apr 2002
Posts: 7
Location: GEFA

Quote:

On 2002-04-15 17:08, kolban wrote:
The MQSeries DLQ is managed by the MQSeries queue manager itself. There is nothing you need do to activate it or otherwise use it. As for the network going down and messages being lost ... I sure hope not. That is one of the basic reasons for MQSeries's existence is to prevent exactly this kind of situation.


but i had read somewhere that "A DLQ must be defined; it isn't created automatically."how can i find that my system has a dlq and how to make sure that the msgs r going into it.
Back to top
View user's profile Send private message
mqonnet
PostPosted: Tue Apr 16, 2002 5:20 am    Post subject: Reply with quote

Grand Master

Joined: 18 Feb 2002
Posts: 1114
Location: Boston, Ma, Usa.

SYSTEM.DEAD.LETTER.QUEUE is the default dead letter queue which is created by default. If in the event that MCA(which is the usual guy putting messages on DLQ), is unable to put the messages onto the destined queue, it will put the messages to this queue(SYSTEM.DEAD.LETTER.QUEUE). You could as well change this by defining your own dead letter queue. It has no significance of its own. It is just a local queue. Define a local queue and make it the default dead letter queue by adding this local queue name to the QMGR DEADQ() attribute. And this local queue now serves as the DLQ.

Cheers.
Kumar

_________________
IBM Certified WebSphere MQ V5.3 Developer
IBM Certified WebSphere MQ V5.3 Solution Designer
IBM Certified WebSphere MQ V5.3 System Administrator
Back to top
View user's profile Send private message Send e-mail Visit poster's website
shilps
PostPosted: Wed Apr 17, 2002 5:35 am    Post subject: Reply with quote

Newbie

Joined: 14 Apr 2002
Posts: 7
Location: GEFA

Hi,
I had made a local queue and made it the default dead letter queue by adding this local queue name to the QMGR DEADQ() attribute.I had added it thru the MQ series explorer..... now i had reduce the max no of the msgs in my transmission Q to test the DLQ but the msgs r not going into the DLQ..... waht may be the prob do I need to do define something else also
Back to top
View user's profile Send private message
mqonnet
PostPosted: Wed Apr 17, 2002 5:40 am    Post subject: Reply with quote

Grand Master

Joined: 18 Feb 2002
Posts: 1114
Location: Boston, Ma, Usa.

Back to top
View user's profile Send private message Send e-mail Visit poster's website
mqonnet
PostPosted: Wed Apr 17, 2002 5:43 am    Post subject: Reply with quote

Grand Master

Joined: 18 Feb 2002
Posts: 1114
Location: Boston, Ma, Usa.

Sorry about the previous one...

now i had reduce the max no of the msgs in my transmission Q to test the DLQ but the msgs r not going into the DLQ..... waht may be the prob do I need to do define something else also
---Not quite sure what you trying to test/achieve. Messages will go into DLQ in an DQM setup ONLY when the MCA is trying to put the message to the destination queue and is unable to do so. More specifically. If you trying to put a message onto a local queue at the remote Qmgr via a remote queue locally, the messages would reach the remote DLQ, if the local queue at the other end is, say full(just an example, there are numerous reason why a message might get diverted to a DLQ).
So, in your context, changing TQ is not the solution.

If the above explaination does not resolve your problem, please post the complete scenario.

Cheers.
Kumar


_________________
IBM Certified WebSphere MQ V5.3 Developer
IBM Certified WebSphere MQ V5.3 Solution Designer
IBM Certified WebSphere MQ V5.3 System Administrator
Back to top
View user's profile Send private message Send e-mail Visit poster's website
shilps
PostPosted: Wed Apr 17, 2002 6:00 am    Post subject: Reply with quote

Newbie

Joined: 14 Apr 2002
Posts: 7
Location: GEFA

I am using the MQseries thru jms cleint.i had the prob that what to do with the undelivered msgs.I want them to put into the DLQ. For this I had define the a local Q and put its name in the Qmngr DLQ attribute.Now i wanted to test whether the msgs r going in the DLQ or not, so i reduce the max no of msgs in the TQ so that it will get full.According to my understanding when TQ is full msg r diected to DLQ but its not happening here.I had done nothing else except all this..... what else do i need to do so that msg go to DLQ.
Right now we had not deined any channel etc. I just want to send the msg to DLQ in the simplest Scenario.......for sending the msgs i m using the queueSender.send command simply.what is meant by "Setting up a DLQ ".Am i doing correct?
Back to top
View user's profile Send private message
mqonnet
PostPosted: Wed Apr 17, 2002 6:20 am    Post subject: Reply with quote

Grand Master

Joined: 18 Feb 2002
Posts: 1114
Location: Boston, Ma, Usa.

If i understand right, you have a CLIENT app which is putting messages onto a local queue and you want to send the messages to the DLQ if the queue is full. Well this WILL NOT happen using the standard mechanism. Reason. There are only a very few processes that are allowed to put messages onto a DLQ(while processing requests), such as the mca. You being the application are not allowed to put messages onto the DLQ, just because the destination queue is full.
If this is what is your scenario, then the alternative to this would be to write a message exit to divert any messages beyond the limit of the local destination queue to some other queue(Such as the DLQ, in your case).

Hope this helps.

Cheers.
Kumar

_________________
IBM Certified WebSphere MQ V5.3 Developer
IBM Certified WebSphere MQ V5.3 Solution Designer
IBM Certified WebSphere MQ V5.3 System Administrator
Back to top
View user's profile Send private message Send e-mail Visit poster's website
shilps
PostPosted: Wed Apr 17, 2002 7:15 am    Post subject: Reply with quote

Newbie

Joined: 14 Apr 2002
Posts: 7
Location: GEFA


thnx a lot, ur understanding is correct.My prob is not only to send msg to DLQ on getting TQ full but to handle all the undeliver msgs whatever may be the reason.
Now how can i activate the MCA and all in this scenario....from where do i get the required info ans step by step procedure.....i am not able to understand how to sort out the problem
Back to top
View user's profile Send private message
mqonnet
PostPosted: Wed Apr 17, 2002 7:22 am    Post subject: Reply with quote

Grand Master

Joined: 18 Feb 2002
Posts: 1114
Location: Boston, Ma, Usa.

Now how can i activate the MCA and all in this scenario....from where do i get the required info ans step by step procedure.....i am not able to understand how to sort out the problem
There are at least two ways to resolve this problem.
1) Instead of using the Client library use Server library. Define two Queue managers. Set up channels from one end to the other. Define remote queue on local end pointing to local queue on remote end. Start the listener, sdr channels. Point your app to put messages to the remote queue. Configure the local queue and the qmgr on remote end to the DLQ of your choice. In this case, all messages beyond a limit WOULD go to the DLQ.
But since there might not be a requirement at all for all this set up, trying to go ahead with this would be useless, unless you need to do this. And hence the other alternative would be 2).
2) Go for message exits. Before putting a message, try to do an inq on the queue to see if it has reached the maximum limit, else put the message.
3) Another alternative would be to enable event monitoring. Use Queue events, in this case, queue full event. And the corresponding action upon the same. Take a look at "Mqseries programmable system management" for more details on this one.

Hope this helps.
Cheers.
Kumar

_________________
IBM Certified WebSphere MQ V5.3 Developer
IBM Certified WebSphere MQ V5.3 Solution Designer
IBM Certified WebSphere MQ V5.3 System Administrator
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ Java / JMS » how to implement DLQ using JMS client
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.