Author |
Message
|
ralu |
Posted: Tue May 24, 2005 3:46 am Post subject: JMS and Pub/Sub |
|
|
Apprentice
Joined: 17 Nov 2004 Posts: 26 Location: Switzerland
|
I have a running System with JMS and pub/sub.
Publisher send message to the broker via MQ-Client.
Now I have to separate into 2 QManager.
On QM1 there should be run the Broker.
Onto the other one the Application MQ-Client.
I've defined
SYSTEM.BROKER.CONTROL.QUEUE,
SYSTEM.BROKER.DEFAULT.STREAM and
SYSTEM.BROKER.ADMIN.STREAM
as remote queues on QM1 but get by starting the client the following error:
MQJMS1017: Nicht-lokale MQ-Warteschlange für Empfang bzw. Anzeige nicht zulässig
-> non-local queue not allowed for receiving
What's the matter ?
Thanks |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue May 24, 2005 3:54 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You can't issue a get/receive against a queue that is defined on a different queue manager.
Pretend you have boxA with an MQ client, and it is connected to a queue manager(QMB) on box B, and the broker and queue manager(QMC) is on box C.
The app on Box A can only recieve messages from queues that are qlocal on QMB, and the broker on box C can only recieve from queues that are qlocal on QMC. This means that your publisher app on Box must publish to remote queues, and your subscriber must put it's subscription request to a remote queue. The subscriber must subscribe to a qlocal on QMB. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
ralu |
Posted: Tue May 24, 2005 4:06 am Post subject: |
|
|
Apprentice
Joined: 17 Nov 2004 Posts: 26 Location: Switzerland
|
You're right. It's also my understanding.
Which queues do i have to define in BOX QMB ?
I think only a remote SYSTEM.BROKER.CONTROL.QUEUE to BOX QMC.
That's my infrastructure, but it doesn't run ?
Are there some JMS problems with that ?
The System failt in:
com.ibm.mq.jms.MQSession.createQReceiver(MQSession.java:5745)
at com.ibm.mq.jms.MQQueueSession.createReceiver(MQQueueSession.java:293)
at com.ibm.mq.jms.MQQueueSession.createReceiver(MQQueueSession.java:272) |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue May 24, 2005 4:13 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
There shouldn't be "JMS" problems with a remote broker. I'm not 100% positive on that, but ... there shouldn't be.
What other SYSTEM.BROKER.* queues are defined on the broker? There may be more that you have to make qremotes. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
ralu |
Posted: Tue May 24, 2005 4:22 am Post subject: |
|
|
Apprentice
Joined: 17 Nov 2004 Posts: 26 Location: Switzerland
|
I can't say it. I havn't account just know.
Is there another solution to separate publisher, and broker ?
The problem was, that the publisher have lost connection to the QManager on the broker site many times (e.g. due to network errors) and I want to spend an dedicated QManager for the publisher.
Do you know which remote SYSTEM.BROKER.* i need remote ? |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue May 24, 2005 4:32 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
I don't know completely.
At a minimum, I would think you would need SYSTEM.JMS.REPORT.QUEUE and your subscriber queue.
Are you using durable or non-durable?
You should also look at the documentation for your broker. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue May 24, 2005 4:34 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Another possibility is to also install a broker on QMB, and configure it in a collective of some sort with the other, such that it will only publish the topics you want it to.
How to form collectives should definitely be in the doc for the broker you're using. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue May 24, 2005 4:54 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Also, get the LinkedException for this JMSException. It may tell you what queue it is having problems with. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
ralu |
Posted: Tue May 24, 2005 5:01 am Post subject: |
|
|
Apprentice
Joined: 17 Nov 2004 Posts: 26 Location: Switzerland
|
I found in the 'USING JAVA" documentation, how to configure a remote Broker. I will test it before.
Thanks for advice |
|
Back to top |
|
 |
|