Author |
Message
|
Blackberry |
Posted: Mon Jun 18, 2007 11:53 pm Post subject: intercommunication between QManagers |
|
|
Apprentice
Joined: 12 Jul 2006 Posts: 28
|
I want to test a schenario like QM1 -> QM2 -> QM3 in DQM environment. I have to go via QM2 because of authentication.
I want to put a particular message to a queue in QM3.
What will be the best way to communicate from QM1 to QM3?
Thanks,
Blackberry |
|
Back to top |
|
 |
Vitor |
Posted: Mon Jun 18, 2007 11:57 pm Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Via QM2 from the sound of your scenario!
You'll need to set up queue manager aliases so the message can multi-hop along the route you need, i.e. the route from QM1 to QM3 runs via QM2. So your message is put to a remote queue on QM1, this is routed to QM2 believing it's going to QM3, then from QM2 to QM3.
You'll find this documented, but it's pretty straightforward. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
Blackberry |
Posted: Tue Jun 19, 2007 1:33 am Post subject: |
|
|
Apprentice
Joined: 12 Jul 2006 Posts: 28
|
Hi Vitor,
I have defined a remte Queue named QM3 like
DEFINE QREMOTE (QM3) RNAME(Q1) RQMNAME(QM3) XMITQ(QM2)
and corresponding channels and transmit queue.
But still not not working. Could you tell me any reference i can follow?
Thanks,
Blackberry |
|
Back to top |
|
 |
marcin.kasinski |
Posted: Tue Jun 19, 2007 1:42 am Post subject: |
|
|
Sentinel
Joined: 21 Dec 2004 Posts: 850 Location: Poland / Warsaw
|
Blackberry wrote: |
Hi Vitor,
I have defined a remte Queue named QM3 like
DEFINE QREMOTE (QM3) RNAME(Q1) RQMNAME(QM3) XMITQ(QM2)
and corresponding channels and transmit queue.
But still not not working. Could you tell me any reference i can follow?
Thanks,
Blackberry |
You have to define QMGR alias on QM1.
Code: |
DEFINE QREMOTE (QM3) RNAME('') RQMNAME(QM3) XMITQ(QM2) |
It tells QM1 to send all messages to QM3 via QM2. _________________ Marcin |
|
Back to top |
|
 |
Blackberry |
Posted: Tue Jun 19, 2007 3:10 am Post subject: |
|
|
Apprentice
Joined: 12 Jul 2006 Posts: 28
|
Hi
marcin.kasinski
Done but still not working. How send a message on particular Queue? |
|
Back to top |
|
 |
marcin.kasinski |
Posted: Tue Jun 19, 2007 3:43 am Post subject: |
|
|
Sentinel
Joined: 21 Dec 2004 Posts: 850 Location: Poland / Warsaw
|
Blackberry wrote: |
Hi
marcin.kasinski
Done but still not working. How send a message on particular Queue? |
What does it mean "still not working" ?
Where your message is placed ?
Whhat is status of channels ?
Any messages in logs ?
Show us definition of your remote queue. _________________ Marcin
Last edited by marcin.kasinski on Tue Jun 19, 2007 4:01 am; edited 2 times in total |
|
Back to top |
|
 |
Vitor |
Posted: Tue Jun 19, 2007 3:58 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Blackberry wrote: |
Done but still not working. |
Where does the message end up? Do you get a reason code? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
rparti |
Posted: Tue Jun 19, 2007 6:39 am Post subject: |
|
|
 Voyager
Joined: 05 Oct 2005 Posts: 86 Location: U.S.A.
|
marcin.kasinski wrote: |
Blackberry wrote: |
Hi Vitor,
I have defined a remte Queue named QM3 like
DEFINE QREMOTE (QM3) RNAME(Q1) RQMNAME(QM3) XMITQ(QM2)
and corresponding channels and transmit queue.
But still not not working. Could you tell me any reference i can follow?
Thanks,
Blackberry |
You have to define QMGR alias on QM1.
Code: |
DEFINE QREMOTE (QM3) RNAME('') RQMNAME(QM3) XMITQ(QM2) |
It tells QM1 to send all messages to QM3 via QM2. |
I believe that you define the QM alias in QM2
Code: |
DEFINE QREMOTE (QM3.ALIAS) RNAME('') RQMNAME(QM3) XMITQ(QM3) |
In QM1 you will define a remote queue
Code: |
DEFINE QREMOTE (RQName) RNAME(LQatQM3) RQMNAME(QM3.ALIAS) XMITQ(QM2) |
|
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Jun 19, 2007 6:45 am Post subject: |
|
|
Guest
|
A queue manager alias not required for a one-hop configuration. It would be needed if more than one hop was involved.
I'm assuming that you already have channels from QM1 to QM2, and from QM2 to QM3.
The remote definition opened by the program on QM1 will specify the name of the local transmission queue, the name of the local queue at QM3 in the rname() parameter, and the name of the queue manager that owns the local queue in the rqmname(QM3) parameter.
At mqput time, the qmgr builds a transmission queue header containing the rname and rqmname from the remote definitions. When the message arrives on QM2, the MCA will drive name resolution for the rqmname(QM3). If on QM2 you have a transmission queue named QM3 - IBM's suggested naming convention is to name the transmission queue the same name as the queue manager that the channel connects to - the message will be mqput to the QM3 transmission queue and arrive on QM3.
On QM3, the message will be mqput to the local queue contained in the rname() parameter.
A queue manager alias may be required on QM2 if you named your transmission queue to QM3 something other than QM3. |
|
Back to top |
|
 |
tleichen |
Posted: Wed Jun 20, 2007 6:29 am Post subject: |
|
|
Yatiri
Joined: 11 Apr 2005 Posts: 663 Location: Center of the USA
|
Have you considered reading the Intercommunication manual?  _________________ IBM Certified MQSeries Specialist
IBM Certified MQSeries Developer |
|
Back to top |
|
 |
|