Am 19.11.2011 18:21, Timothy Bish wrote:
If you want to be sure that the message is processed, then you need to
add a receipt request, otherwise the delivery is not guaranteed. You
await the receipt an once received you know the broker had a chance to
process the message before the connection was closed as inactive.
Thank you for your answer, I will use receipt headers in my tests now as
you suggested.
With my current tests (which do not use a receipt header in the Stomp
SEND frame), I see the following output repeatedly in the broker log.
These messages start to appear a few moments after the client waited too
long:
WARN | Transport failed:
org.apache.activemq.transport.InactivityIOException: C
hannel was inactive for too (>2000) long: tcp://127.0.0.1:49459
WARN | Failed to browse Topic: TEST.DEFAULT
java.lang.NullPointerException
at
org.apache.activemq.broker.region.policy.LastImageSubscriptionRecover
yPolicy.browse(LastImageSubscriptionRecoveryPolicy.java:63)
at org.apache.activemq.broker.region.Topic.doBrowse(Topic.java:572)
at
org.apache.activemq.broker.region.Topic.access$100(Topic.java:63)
at org.apache.activemq.broker.region.Topic$6.run(Topic.java:667)
at
org.apache.activemq.thread.SchedulerTimerTask.run(SchedulerTimerTask.
java:33)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Regards
--
Michael Justin