activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From atani <jsteven...@bepress.com>
Subject Re: Non-ASCII messages via Stomp being dropped or mangled in 5.5
Date Thu, 28 Jul 2011 00:03:41 GMT

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