Posted By:
suraj_suraj
Posted On:
Thursday, June 27, 2002 02:59 AM
I have a server process that publishes on Topic1 and clients listening on Topic1. Server itself listens on Topic2. Server publishes "keys" (Strings) on Topic1. If a key is reset (say by admin via Topic2), server sends a "keyreset" message to clients on Topic1. If there are clients listening for that key, then those clients resend a request for that key to be (re)published (to the server via Topic2). Now this bit is done by the client by creating a temp topic, setting JMSReplyTo to this topic, and then wait for a reply from the sever confirming that it has acknowledged the request. The server creates a publisher with a NULL top
More>>
I have a server process that publishes on Topic1 and clients listening on Topic1.
Server itself listens on Topic2.
Server publishes "keys" (Strings) on Topic1. If a key is reset (say by admin via Topic2), server sends a "keyreset" message to clients on Topic1.
If there are clients listening for that key, then those clients resend a request for that key to be (re)published (to the server via Topic2).
Now this bit is done by the client by creating a temp topic, setting JMSReplyTo to this topic, and then wait for a reply from the sever confirming that it has acknowledged the request. The server creates a publisher with a NULL topic and uses the replyto topic to publish the message on.
When one client makes the request (on a key reset), it works fine.
If I have 2 clients that fire off the request (on a key reset), then they hang. When I kill the any one client, I notice the following error on the server process:
javax.jms.JMSException: com.swiftmq.swiftlet.queue.QueueHandlerClosedException
at com.swiftmq.router.swiftlets.jms.JMSProducerManager.produceMessage(JMSProducerManager.java:216)
at com.swiftmq.router.swiftlets.jms.JMSSession$SessionVisitor.visitProduceMessageRequest(JMSSession.java:479)
at com.swiftmq.jms.smqp.ProduceMessageRequest.accept(ProduceMessageRequest.java:140)
at com.swiftmq.router.swiftlets.jms.JMSSession$ServiceRequest.run(JMSSession.java:386)
at com.swiftmq.router.swiftlets.threadpool.PoolThread.run(PoolThread.java:52)
Can you please make some suggestions as to where I am going wrong.
Thanks.
<<Less