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 Discussion » [Solved]Reply To Queue in Cluster

Post new topic  Reply to topic
 [Solved]Reply To Queue in Cluster « View previous topic :: View next topic » 
Author Message
jmeier
PostPosted: Tue Oct 15, 2002 11:46 am    Post subject: [Solved]Reply To Queue in Cluster Reply with quote

Apprentice

Joined: 30 Aug 2002
Posts: 46
Location: Minneapolis

I have a VB application running on NT that is trying to put a message to a queue on a UNIX box. I am getting a ReasonCode 2085, MQRC_UNKNOWN_OBJECT_NAME. The code that is crashing is:

Set PutMQQueue = MQQueueMgr.AccessQueue(oMsg.ReplyToQueueName, MQAX200.MQ.MQOO_OUTPUT)

What am I missing? A message can be placed on the queue using a command line, but not thru the VB application.

Thanks in advance for any help....
_________________
Joe Meier


Last edited by jmeier on Wed Mar 05, 2003 1:54 pm; edited 1 time in total
Back to top
View user's profile Send private message
bduncan
PostPosted: Tue Oct 15, 2002 8:59 pm    Post subject: Reply with quote

Padawan

Joined: 11 Apr 2001
Posts: 1554
Location: Silicon Valley

Joe,
Have you browsed these messages on the queue before retrieving them to ensure that the REPLYTOQ attribute is actually set correctly? It sounds like they are empty and your application is trying to open an unnamed queue on the reply...
_________________
Brandon Duncan
IBM Certified MQSeries Specialist
MQSeries.net forum moderator
Back to top
View user's profile Send private message Visit poster's website AIM Address
jmeier
PostPosted: Wed Oct 16, 2002 4:13 am    Post subject: Reply with quote

Apprentice

Joined: 30 Aug 2002
Posts: 46
Location: Minneapolis

I am actually specifying the reply to queue name in a prior statement. The reply q is filled in on the queue also.

putMsg.ReplyToQueueName = "DEV.DEVGRP.DEVSYS.EXEXML"

I also have verified that the case is correct on the queue name.
_________________
Joe Meier
Back to top
View user's profile Send private message
jmeier
PostPosted: Wed Oct 16, 2002 6:08 am    Post subject: Reply with quote

Apprentice

Joined: 30 Aug 2002
Posts: 46
Location: Minneapolis

I also just checked out putting a message to the reply 2 queue from an amqsput command and it sent OK. It just seems to be how my code is handling it. Any suggestions?
Thanks.
_________________
Joe Meier
Back to top
View user's profile Send private message
mrlinux
PostPosted: Wed Oct 16, 2002 6:57 am    Post subject: Reply with quote

Grand Master

Joined: 14 Feb 2002
Posts: 1261
Location: Detroit,MI USA

1) Are you running your VB app as client or Server ???

2) you mention command line (from where are you executing this)
NT or UNIX ???
_________________
Jeff

IBM Certified Developer MQSeries
IBM Certified Specialist MQSeries
IBM Certified Solutions Expert MQSeries
Back to top
View user's profile Send private message Send e-mail
jmeier
PostPosted: Wed Oct 16, 2002 7:15 am    Post subject: Reply with quote

Apprentice

Joined: 30 Aug 2002
Posts: 46
Location: Minneapolis

I am running the VB application as a server app and I used the NT command line. The reply to queue is sitting on the Unix server, however, I have tried to use a queue on the NT box as well and get the same error.
_________________
Joe Meier
Back to top
View user's profile Send private message
mrlinux
PostPosted: Wed Oct 16, 2002 7:21 am    Post subject: Reply with quote

Grand Master

Joined: 14 Feb 2002
Posts: 1261
Location: Detroit,MI USA

Well my guess is that this "putMsg.ReplyToQueueName " should refernce the destination queue. Iam not a vb programmer.
more like this putMsg.QueueName
_________________
Jeff

IBM Certified Developer MQSeries
IBM Certified Specialist MQSeries
IBM Certified Solutions Expert MQSeries
Back to top
View user's profile Send private message Send e-mail
nimconsult
PostPosted: Wed Oct 16, 2002 11:07 pm    Post subject: Reply with quote

Master

Joined: 22 May 2002
Posts: 268
Location: NIMCONSULT - Belgium

Reading at the subject of your question, I will assume that your queue managers on NT and Unix boxes are together in a cluster, and you try, from the NT queue manager, to reply to a queue located on the Unix box.

I have personally little experience with using the API in VB, but I can try an explanation.

I think that your problems comes from the argument used in the MQOPEN statement by the "accessQueue(queueName, options)" method. More specifically, I think that the problem comes from the queue manager name attribute.

Try this:
cluster with QM1 and QM2.
In QM1, define a local queue LQ.QM1, published in the cluster.

Open the API exerciser (amqapi.exe), connect to QM2, perform this test:

(1)
In advanced mode, MQOPEN with BIND_NOT_FIXED, queue manager name = "QM2", queue name = "LQ.QM1".
MQOPEN result is MQCC_FAILED (2085).

(2)
In advanced mode, MQOPEN with BIND_NOT_FIXED, queue manager name = "", queue name = "LQ.QM1".
MQOPEN result is MQCC_OK.


I think that the accessQueue method with no queue manager parameter fills in the queue manager name attribute, and that is why it fails.

Possible solutions to your problem:
(1)
If the VB API is similar to the Java one, you should have another accessQueue method with a queue manager name argument.
(2)
Reply messages are more generally sent with MQPUT1 (instead of MQOPEN, MQPUT, MQCLOSE) because the server is not supposed to know the reply-to-queue name in advance.
If the VB API is similar to the Java one, you should have a "put" method at the level of the queue manager object, in which you can pass the queue manager name (=inputmsg.replyToQMgr) and queue name (=inputmsg.replyToQ).
_________________
Nicolas Maréchal
Senior Architect - Partner

NIMCONSULT Software Architecture Services (Belgium)
http://www.nimconsult.be
Back to top
View user's profile Send private message Send e-mail Visit poster's website
jmeier
PostPosted: Mon Oct 21, 2002 12:46 pm    Post subject: Reply with quote

Apprentice

Joined: 30 Aug 2002
Posts: 46
Location: Minneapolis

I am now trying to just put the message to a queue and setting an error queue as a replytoqueue. This seems to work somewhat, in that I now receive error messages to the error queue. I am having issues with successfully putting to the original queue. The error message in the error queue is:

FMC00805E OID for persistentObject() not valid.

Has anyone else run into this?
_________________
Joe Meier
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 Discussion » [Solved]Reply To Queue in Cluster
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.