activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dejan Bosanac <de...@nighttale.net>
Subject Re: Non-ASCII messages via Stomp being dropped or mangled in 5.5
Date Thu, 28 Jul 2011 07:43:52 GMT
Thanks for closing the loop.

Regards
-- 
Dejan Bosanac - http://twitter.com/dejanb
-----------------
The experts in open source integration and messaging - http://fusesource.com
ActiveMQ in Action - http://www.manning.com/snyder/
Blog - http://www.nighttale.net


On Thu, Jul 28, 2011 at 2:03 AM, atani <jstevenson@bepress.com> wrote:

>
> I downloaded the 5.6 source and added trace logging in StompWireFormat.java
> and LegacyFrameTranslator.java and it's starting to look like there's
> something happening between the Net::Stomp library and the ActiveMQ input
> stream - that something is somehow related to the use of SSL.  The problem
> only occurs when I'm connected over SSL (possibly something in
> IO::Socket::SSL).
>
>
> Without SSL my StompWireFormat logging shows a fine looking byte[]
> constructed in unmarshal( DataInput in ) and everything works well:
>
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - - - - - - - - unmarshal
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - parseHeaders line: destination:/queue/jstevenson@jstevenson2.msgtest2
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - parseHeaders line: content-length:63
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - parseHeaders line:
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - header 'destination' = '/queue/jstevenson@jstevenson2.msgtest2'
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - header 'content-length' = '63'
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - data 0 W / 87
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - data 1 e / 101
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - data 2 d / 100
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - data 3   / 32
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - data 4 J / 74
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - data 5 u / 117
> 2011-07-27 16:12:51,640 [.168.1.61:46444] TRACE StompWireFormat
> - data 6 l / 108
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 7   / 32
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 8 2 / 50
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 9 7 / 55
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 10   / 32
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 11 1 / 49
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 12 6 / 54
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 13 : / 58
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 14 1 / 49
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 15 2 / 50
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 16 : / 58
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 17 5 / 53
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 18 1 / 49
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 19   / 32
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 20 2 / 50
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 21 0 / 48
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 22 1 / 49
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 23 1 / 49
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 24   / 32
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 25 u / 117
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 26 t / 116
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 27 f / 102
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 28 8 / 56
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 29   / 32
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 30 e / 101
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 31 n / 110
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 32 c / 99
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 33 o / 111
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 34 d / 100
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 35 e / 101
> 2011-07-27 16:12:51,641 [.168.1.61:46444] TRACE StompWireFormat
> - data 36 d / 100
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 37 : / 58
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 38   / 32
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 39 l / 108
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 40 a / 97
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 41 t / 116
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 42 i / 105
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 43 n / 110
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 44 1 / 49
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 45   / 32
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 46 h / 104
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 47 e / 101
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 48 r / 114
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 49 e / 101
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 50 > / 62
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 51 ? / -61
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 52 ? / -104
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 53 o / 111
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 54 ? / -61
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 55 ? / -106
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 56 p / 112
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 57 s / 115
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 58 < / 60
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 59 h / 104
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 60 e / 101
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 61 r / 114
> 2011-07-27 16:12:51,642 [.168.1.61:46444] TRACE StompWireFormat
> - data 62 e / 101
> 2011-07-27 16:12:51,643 [.168.1.61:46444] TRACE StompWireFormat
> - - - - - - - - done/unmarshal
>
>
> Over SSL that logging shows that the byte[] has additional bytes in it, at
> the point of the encoded non-ascii characters.
>
>
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - - - - - - - - unmarshal
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - parseHeaders line: destination:/queue/jstevenson@jstevenson2.msgtest2
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - parseHeaders line: content-length:63
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - parseHeaders line:
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - header 'destination' = '/queue/jstevenson@jstevenson2.msgtest2'
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - header 'content-length' = '63'
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - data 0 W / 87
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - data 1 e / 101
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - data 2 d / 100
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - data 3   / 32
> 2011-07-27 16:03:15,594 [127.0.0.1:38819] TRACE StompWireFormat
> - data 4 J / 74
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 5 u / 117
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 6 l / 108
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 7   / 32
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 8 2 / 50
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 9 7 / 55
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 10   / 32
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 11 1 / 49
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 12 6 / 54
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 13 : / 58
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 14 0 / 48
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 15 3 / 51
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 16 : / 58
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 17 1 / 49
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 18 5 / 53
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 19   / 32
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 20 2 / 50
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 21 0 / 48
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 22 1 / 49
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 23 1 / 49
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 24   / 32
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 25 u / 117
> 2011-07-27 16:03:15,595 [127.0.0.1:38819] TRACE StompWireFormat
> - data 26 t / 116
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 27 f / 102
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 28 8 / 56
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 29   / 32
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 30 e / 101
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 31 n / 110
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 32 c / 99
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 33 o / 111
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 34 d / 100
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 35 e / 101
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 36 d / 100
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 37 : / 58
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 38   / 32
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 39 l / 108
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 40 a / 97
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 41 t / 116
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 42 i / 105
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 43 n / 110
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 44 1 / 49
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 45   / 32
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 46 h / 104
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 47 e / 101
> 2011-07-27 16:03:15,596 [127.0.0.1:38819] TRACE StompWireFormat
> - data 48 r / 114
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 49 e / 101
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 50 > / 62
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 51 ᅢ / -61
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 52 テ / -125
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 53 ᅡ / -62
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 54 リ / -104
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 55 o / 111
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 56 ᅢ / -61
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 57 テ / -125
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 58 ᅡ / -62
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 59 ヨ / -106
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 60 p / 112
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 61 s / 115
> 2011-07-27 16:03:15,597 [127.0.0.1:38819] TRACE StompWireFormat
> - data 62 < / 60
>
>
> The problems start at array index 51.  So this looks like it's either
> something in the SSL encoding layer (perl) or the decoding layer - though I
> don't think it's the decoding/receiving end: I've tried the ActiveMQ
> stomp+ssl transportConnector, stunnel, and other SSL offloading utilities,
> the behavior is the same.
>
>
> Thanks all for their thoughts and input - perhaps I'll try Lionel's
> Net::Stomp::Client but I might just call this enough and go with the base64
> approach, as unfortunate as will be.
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/Non-ASCII-messages-via-Stomp-being-dropped-or-mangled-in-5-5-tp3679601p3700108.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message