Consultor Eletrônico



Kbase P116497: How to change Sonic ESB full queue default behavior
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   6/3/2006
Status: Unverified

GOAL:

How to change Sonic ESB full queue default behavior

GOAL:

How to trigger an action when a Sonic ESB queue is full

FACT(s) (Environment):

SonicMQ

FIX:

To do this it is necessary to disable the 'Flow Control' function.
To disable this property in a JMS client you must include the following line:
((progress.message.jclient.session)mySession).setFlowControlDisabled(true);
Then you have to surround the method 'send' with a 'try/catch' sentence.
try { sender.send( msg);
} catch (javax.jms.JMSException jmse) {
jmse.printStackTrace();
}
It must display an exception like this one:
javax.jms.JMSException: Queue destination is currently blocked - send rejected.
at progress.message.jimpl.JMSExceptionUtil.createJMSException(Unknown Source)
at progress.message.jimpl.MessageProducer.internalSend(Unknown Source)
at progress.message.jimpl.MessageProducer.send(Unknown Source)
at progress.message.jimpl.QueueSender.send(Unknown Source)