Hossam,
I think your terminology may be a little off. Here's what I understand you to be doing in part 1 according to the following from your original post:
"1- QM-1 sends a request message to QM-2, The MQMD will include the
ReplyToQManagerName ( QM-1 in this case), and ReplyToQName ( Dynamic
Queue created by a client Application-1)"
I understand this to mean that you are connecting to QM-1 (as a client, I think) and putting a message which you intend to be delivered to a local queue on QM-2. In the message you have populated the reply to fields so that the response will be returned to QM-1 (on a dynamic queue). This will work if a) you populate the MQOD.ObjectName with the name of the local request queue on QM-2 and if you populate the MQOD.ObjectQMgrName with QM-2.
In the base Java classes the MQOD.ObjectQMgrName is specified in either MQQueue constructor (4th parameter - queueManagerName) or the accessQueue method of the MQQueueManager (3rd parameter - queueManagerName). As I said earlier, I'm not sure how your wrapper works, but it needs to give you access to this parameter for this to work. Once the message gets to QM-1, and assuming you have a good channel to QM-2 with an xmitq named QM-2, the qmgr name resolution will handle the routing of the message. You shouldn't have to do anything special. If you can successfully use a remote queue from QM-1 to QM-2 without specifying an xmitq of another name, then the qmgr name resolution is working. You only need a qmgr alias if the xmitq has a name different than the actual qmgr name, or if there is an intermediate qmgr through which you have to make a hop.
The other half of the process is described as follows:
"2- Client Application-2 listens on the Request Queue, process the
request, and puts back a response on QM-2 . Application-2 in this case
doesn't have any access to QM-1."
This looks like pretty much the same situation as #1. The processing application on QM-2 gets the message and retrieves the reply-to info from the request message and sends a response. Similarly to what is described for #1, the MQOD.ObjectName of the reply queue will be set to the replyToQName and the MQOD.ObjectQMgrName will be set to the replyToQMgrName. If a good channel connection exists from QM-2 to QM-1 and the xmitq is named QM-1 then this should also work.
Nick
-----Original Message-----
From: MQSeries List [mailto:[EMAIL PROTECTED]] On Behalf Of Khedr, Hossam (GEI, MORT)
Sent: Tuesday, April 27, 2004 8:02 AM
To: [EMAIL PROTECTED]
Subject: Re: Qmanager Alias Definition?
Thanks for clearing this out.
I had a hard time explaining it. Your assumption about the MQSender program is right, I'm trying to use it so I can put files on a replytoqueue.name replytoqmanager.name, but still getting 2085 code. It seems like I should have some other setup on the xmitq before I can use it as replytoqmanager.name on my MQSender command.
Do I have to do any special setup on the XMITQ or the Channel? same XMITQ and Channel work when using a RemoteQueue along.
Thanks for your help,
-----Original Message-----
From: MQSeries List [mailto:[EMAIL PROTECTED]]On Behalf Of Miller,
Dennis
Sent: Monday, April 26, 2004 9:31 PM
To: [EMAIL PROTECTED]
Subject: Re: Qmanager Alias Definition?
While it's possible to open the XMITQ directly, it's not advised because
you have to build a distribution header and play other low-level games.
You want to open the replytoqueue at replytoqmgr and allow the local
qmgr to resolve that combination to the xmitq.
I'm not totally sure what your MQSender can do, but if it works as
properly then it would look something like:
MQSender replytoqueue.name replytoqmanager.name
The qmgr will recognize that replytoqmanager.name is is the name of an
xmitq and open it in behalf of the MQSender. You reference the xmitq as
a queue manager name, not as a queue name.
-----Original Message-----
From: Khedr, Hossam (GEI, MORT) [mailto:[EMAIL PROTECTED]]
Sent: Monday, April 26, 2004 11:07 AM
To: [EMAIL PROTECTED]
Subject: Re: Qmanager Alias Definition?
Thanks Nick,
Here is what I meant by my command:
Java MQsender <queueName> <QManagerName>
java MQSender remoteQueueName XMITQQName . ( note I my XMITQQName is the
same as the destination Q Manager Name)
To simplify, I need to put a message on an XMITQ, the message should
routed to a remote QueueManager with the same name as my XMITQ , but I'm
getting 2085 when trying using java.
Thanks,
Hossam
-----Original Message-----
From: MQSeries List [mailto:[EMAIL PROTECTED]]On Behalf Of Nick
Dilauro
Sent: Monday, April 26, 2004 1:45 PM
To: [EMAIL PROTECTED]
Subject: Re: Qmanager Alias Definition?
You shouldn't put the XMITQName in the remoteQueueName. You should
populate your sender routine with a queue name and qmgr name the same
way you would if the queue was a local queue. The local qmgr will then
find the xmitq and route your message correctly.
Nick
-----Original Message-----
From: MQSeries List [mailto:[EMAIL PROTECTED]] On Behalf Of Khedr,
Hossam (GEI, MORT)
Sent: Monday, April 26, 2004 10:24 AM
To: [EMAIL PROTECTED]
Subject: Re: Qmanager Alias Definition?
Thanks,
I did try to put messages on an XMITQ that has the same name as the
remote QManager name. I used a java program MQSender.java to do it. so
my java command looked like : java MQSender remoteQueueName
XMITQName(this is my destination QMANGER Name too) . I got an error code
2085. what am I missing ( i.e. auth on the xmitQ, or is it the way that
I create QManager object within the java program)
Thanks,
Hossam
-----Original Message-----
From: MQSeries List [mailto:[EMAIL PROTECTED]]On Behalf Of Miller,
Dennis
Sent: Thursday, April 22, 2004 2:58 PM
To: [EMAIL PROTECTED]
Subject: Re: Qmanager Alias Definition?
First note, the qremote you describe is NOT a qmgr alias, nor do you
need one. Client 2 can simply move ReplyToQManagerName to
ObjectQmgrNamr before opening the ReplyToQueue. This causes client 2 to
place the message on the XMIT-Q by the same name as the
ReplyToQmanagerName. You only need a qmgr alias when the desired
outbound xmitq has a different name.
If you prefer to use the qremote on client 2 instead of the method
described above, then RQUEUE must identify the replytoqueue. That
implies you cannot generate replytoqueue names dynamically. Regards,
Dennis -----Original Message-----
From: Khedr, Hossam (GEI, MORT) [mailto:[EMAIL PROTECTED]]
Sent: Thursday, April 22, 2004 9:48 AM
To: [EMAIL PROTECTED]
Subject: Qmanager Alias Definition?
Hi All,
We are in the process of testing the concept of QManager alias. One
scenario that comes to mind is :
1- QM-1 sends a request message to QM-2, The MQMD will include the
ReplyToQManagerName ( QM-1 in this case), and ReplyToQName ( Dynamic
Queue created by a client Application-1)
2- Client Application-2 listens on the Request Queue, process the
request, and puts back a response on QM-2 . Application-2 in this case
doesn't have any access to QM-1.
Question:
What is needed from the QM-2 Admin? In regards to Qmanager alias , XmitQ
, or other setup. We successfully ran the same scenario using remoteQ,
Xmitq , channels. however, when I tried to setup QManager alias, I got
the famous code 2085.
For more details on our current setup:
RemoteQ definition to act as QManager Alias : RQUEUE(QM-1.ALIAS)
XMITQ(QM-1) RQMNAME(QM-1)
XMiteQ definition: QLOCAL(QM-1) USAGE(XMITQ)
Channel : CHANNEL(QM-2.TO.QM-1) CHLTYPE(SDR) XMITQ(QM-1)
CONNNAME(sys1(1416))
Now the application-2 fires a command to put a response message to the
QM-1 with a Dynamic Queue Name ( in this case PUT message to DynamicQ on
QM-1.ALIAS). What are we missing? Thanks in advance for your help,
> Hossam Khedr
> GE MI Canada
> Project Symphony
> Tel (905) 858-5248
> 8*250-5248
>
>
>
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com