activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Dean <ad...@meteostar.com>
Subject Re: messages sent via stomp are not received in ajax client
Date Tue, 17 Aug 2010 21:12:52 GMT
As a followup:  We were looking over the release notes for AMQ 5.4  
today, and a co-worker noticed https://issues.apache.org/activemq/browse/AMQ-2833 
.  This allows Stomp clients to indicate text vs byte messages via a  
new custom Stomp header.  This is perfect for our situation, and we're  
looking forward to a 5.4 upgrade in the near future.

alex

On Jul 12, 2010, at 12:48 AM, Dejan Bosanac wrote:

> Hi Alex,
>
> I think it's a bigger problem to pass and handle byte[] content in
> JavaScript. All patches are welcomed, of course :)
>
> Cheers
> --
> Dejan Bosanac - http://twitter.com/dejanb
>
> Open Source Integration - http://fusesource.com/
> ActiveMQ in Action - http://www.manning.com/snyder/
> Blog - http://www.nighttale.net
>
>
>
> On Fri, Jul 9, 2010 at 11:55 PM, Alex Dean <adean@meteostar.com>  
> wrote:
>>
>> On Jul 9, 2010, at 3:44 PM, Alex Dean wrote:
>>
>>>
>>> On Jul 9, 2010, at 1:50 PM, Alex Dean wrote:
>>>
>>>> I have a Ruby script which publishes a message to an ActiveMQ  
>>>> topic via
>>>> Stomp.  I'm attempting to send these messages to the topic used  
>>>> by the demo
>>>> chat.html included in ActiveMQ, so I'm using the XML message  
>>>> format expected
>>>> by that page.  chat.html is this one :
>>>> http://fisheye6.atlassian.com/browse/activemq/branches/activemq-5.3/activemq-web-demo/src/main/webapp/chat.html?r=HEAD
>>>
>>> My problem appears to be the same one described here :
>>> http://juretta.com/log/2009/05/24/activemq-jms-stomp/
>>>
>>> Stomp messages which include a content-length header are converted  
>>> to
>>> BytesMessages by ActiveMQ.  Messages without a content-length  
>>> header are
>>> converted to TextMessages.  TextMessages are delivered to  
>>> JavaScript OK via
>>> AJAX, but BytesMessages are not.
>>>
>>> If I hack the Ruby stomp code to not send a content-length header,  
>>> my
>>> Ruby-published messages start appearing in chat.html.  Is there a  
>>> better way
>>> to solve this problem?
>>
>> For a little more background, http://activemq.apache.org/stomp.html  
>> says
>> that Stomp messages lacking a content-length header are converted  
>> to JMS
>> TextMessage instances.  Messages containing a content-length header  
>> are
>> converted to BytesMessage instances.  MessageListenerServlet.java  
>> makes no
>> attempt to send a BytesMessage to an ajax client, hence the empty  
>> message
>> when content-length is present.
>>
>> See writeMessageResponse in this class:
>> http://fisheye6.atlassian.com/browse/activemq/branches/activemq-5.3/activemq-web/src/main/java/org/apache/activemq/web/MessageListenerServlet.java?r=HEAD
>>
>> I'm trying to determine if it's feasible to try to handle  
>> BytesMessage
>> instances in MessageListenerServlet.  Perhaps via  
>> BytesMessage.readUTF8()?
>>  I'm not very familiar with ActiveMQ or JMS, so I'm not sure what the
>> implications of this might be.
>>
>> thanks,
>> alex
>>


Mime
View raw message