I'd actually recommend building the latest activemq from source.. Until activemq 4.0.2 RC6 is available for download.
On 10/23/06, James Strachan <[EMAIL PROTECTED]> wrote:
Yeah, I'd try 4.0.2 or 4.1 if you are using Stomp as there's been more fixes since 4.0.1 On 10/22/06, sileshi <[EMAIL PROTECTED]> wrote: > > I have discussed in the entry below how I patched the Perl Net::Stomp module > to > exchange Bytes Message. Visit the link below for details. > http://www.nabble.com/Stomp-in-Perl%3A-Net%3A%3AStomp-tf2478545.html#a6943843 > > I'm now running ActiveMQ 4.0.1 and still have a problem with Java JMS Bytes > Message > to Perl Stomp client. Is ActiveMQ 4.1 fixes this Stomp server problem? > > -Sileshi > > > Hiram Chirino wrote: > > > > On 10/20/06, sileshi <[EMAIL PROTECTED]> wrote: > >> > >> > >> I have achieved Perl Stomp and Java JMS clients exchanging Text Messages > >> via > >> ActiveMQ. That is wonderful! > > > > > > > > great! > > > > > > Where I have run into a problem is in the reas of sending message that > >> involves > >> JMS BytesMessage from Java JMS client to destination a Perl Stomp client > >> consumes. I have discovered the AMQ Stomp server doesn't seem to write to > >> the > >> socket in this case. > > > > > > He had a little bug in our code that was recently fixed. If you build > > activemq 4.0.x-SNAPSHOT or 4.1-SNAPSHOT from source it should be able to > > send message to the stomp client. > > > > I have debugged this through the Net::Stomp receive_frame() method where > > the > >> socket is ready for read, but we read zero bytes everytime. Note that, > >> this > >> happens > >> only with JMS BytesMessage. JMS Text Message can be exchanged between > >> perl > >> and > >> java clients with no problem. > > > > > > > > yep. > > > > > > I have eliminated the fact this is not socket problem with binary data, by > >> sending > >> binary data between Perl clients. Note that Stomp being text protocl, > >> thus > >> does not > >> take into consideration that fact that the content or body of message > >> could > >> be > >> non-text data. Therefore, if you send perl-to-perl binary data(in body > >> only), the socket > >> read stops too soon, due to Net::Stomp receive_frame() thinks it is end > >> of > >> frame > >> when runs into null byte. > > > > > > > > yep. For stomp to send binary data that has embeded nulls, you have to > > set > > a > > content-length header. > > > > This indicates to me, that the following changes may be required: > >> > >> 1. Stomp Protocl > >> a. Add either new header or extended header for message body encoding > >> content-encoding: base64, text, etc... > >> content-length: length of message body in bytes > > > > > > yep. we chose content-length > > > > 2. ActiveMQ support > >> ActiveMQ Broker need to add conetnt encoding and length when passing > >> message to Stomp Server. This is true when Stomp Server passes it to > >> broker > > > > > > > > Yep.. when ActiveMQ sees STOMP message with content-length it assumes it's > > a > > BytesMessage and when it gets a BytesMessage it sets the content-length > > header on the stomp frame. > > > > 3. Stomp protocol implementation > >> Need to change the way incoming socket data is read > >> based on content-length and content-encoding. > > > > > > Some stomp clients allready support this. I have recently submitted a > > patch > > for perl Net::Stomp client so that it supports this too. If you want to > > apply the patch yourself, please see: > > > > http://issues.apache.org/activemq/browse/AMQ-978 > > > > > > You may ask, why do I need to send binary message body? > >> I'm trying to build RPC over the JMS Message Broker using a binary > >> protocol on top of Stomp. Thus, RPC call has to be > >> marshalled, let's say using BER, and will be envolped in Stomp and > >> sent via Mesage Broker to a Java server. > > > > > > sounds great! > > > > > > Any thought will be welcomed... > > > > > > We were thinking along the same lines.. It's just a matter of waiting for > > all the fixes to get release. > > > > > > -Sileshi > >> -- > >> View this message in context: > >> http://www.nabble.com/AMQ-Missing-JMS-Bytes-Message-on-stomp-tf2483639.html#a6925742 > >> Sent from the ActiveMQ - User mailing list archive at Nabble.com. > >> > >> > > > > > > -- > > Regards, > > Hiram > > > > Blog: http://hiramchirino.com > > > > > > -- > View this message in context: http://www.nabble.com/AMQ-Missing-JMS-Bytes-Message-on-stomp-tf2483639.html#a6944144 > Sent from the ActiveMQ - User mailing list archive at Nabble.com. > > -- James ------- http://radio.weblogs.com/0112098/
-- Regards, Hiram Blog: http://hiramchirino.com
