activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dejan Bosanac <>
Subject Re: ajax handling fast messages
Date Wed, 15 Dec 2010 09:02:14 GMT
Hi Jeff, Alex,

having some kind of test that reproduces the issue would be great.
It'd be good to add something to the tests Alex already contributed

Dejan Bosanac
FuseSource - The experts in open source integration and messaging.
ActiveMQ in Action -
Blog -

On Tue, Dec 14, 2010 at 7:17 PM, Alex Dean <> wrote:
> Hi Jeff.  That's great news.  I'm not very Java-savvy, but I've made a few patches
to the activemq ajax code in the past.  I've spent a bit of time lately trying to get junit
test cases working for testing MessageListenerServlet, so I haven't actually made much progress
in solving the issue at hand.  If you've found the error, that's fantastic.  Can you post
your patch?
> To get a ticket reported, use!default.jspa.
 You'll need to register before you can open an issue.  If you can attach a patch, I will
happily contribute to the testing effort.
> alex
> On Dec 14, 2010, at 10:48 AM, Jeff Rose wrote:
>> Hi Alex,
>>  Thanks for the response.  We looked into it a bit more based on your
>> suggestion, and we discovered that there is an error occurring when the
>> continuation is resumed in onMessageAvailable in  It
>> looks like this onMessageAvailable handler is being called every time a new
>> message arrives on the queue, and then it is trying to resume a continuation
>> that has already been resumed, which causes an illegal state exception.
>> We've been trying to fix the bug  by checking first:
>>   !continuation.isResumed()
>> but we are still getting the error occasionally (although it does often get
>> all of the messages now).  This seems to be a pretty fundamental bug in the
>> AJAX support of ActiveMQ.  Definitely worth posting a ticket (although I
>> don't know where that is done).
>> -Jeff
>> On Fri, Dec 10, 2010 at 6:33 PM, Alex Dean <> wrote:
>>> On Dec 10, 2010, at 11:06 AM, Jeff Rose wrote:
>>>> Hi,
>>>> Based on the ajax chat example I've put together a small test page to
>>>> display messages that I post to a topic or queue using a php script.
>>> When I
>>>> send 10 messages in a for loop from PHP then the ajax handler is only
>>>> getting called with a couple of the messages though.  Looking at ActiveMQ
>>>> with jconsole I can see that all of the messages are getting taken off
>>> the
>>>> queue, but they don't all get to the browser.  Do I need to do something
>>>> special in order to make sure I get all of the messages?
>>>> The relevant code is posted below.  Any thoughts or advice would be
>>>> appreciated.
>>> I've noticed the same issue recently.  If I publish 5 messages via a
>>> ruby+stomp publisher, I receive all 5 in a ruby+stomp consumer, but I only
>>> see 1 message in a javascript/ajax consumer. The <ajax-response> XML element
>>> always has only a single <response> element.  (I can see this in Firebug.)
>>> The admin webapp shows that all my messages are being de-queued, so I think
>>> the ajax servlet is picking up the messages but failing to deliver them to
>>> the browser.
>>> Just this morning I was poking around in the code trying to see what's
>>> going on.  I have a guess it's in MessageListenterServelet.doMessages().
>>> There's some code in there which should put multiple <response> elements
>>> into a single <ajax-response>, but it's not happening for some reason.
>>> Maybe we should open a ticket for this?
>>> alex

View raw message