[ https://issues.apache.org/jira/browse/AMQ-5975?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14902078#comment-14902078 ]
Abhi edited comment on AMQ-5975 at 9/22/15 7:14 AM: ---------------------------------------------------- Is there any specific reason to use ':' in session-id (which is derived from client-id)? Why can't we use any other character in the client-id? The util class do contain a getsanitizedId() method for this purpose only where ':' can cause issues on client side. Using getSanitizedId() should avoid this issue whether we use STOMP protocol v1.0,1.1 or 1.2. Thanks for the help! -xabhi was (Author: xabhi): Is there any specific reason to use ':' in session-id (which is derived from client-id)? Why can't we use any other character in the client-id? The util class do contain a getsanitizedId() method for this purpose only where ':' can cause issues on client side. Using getSanitizedId() should avoid this issue whether we use STOMP protocol v1.0,1.1 or 1.2. I will log a bug for client library as well but would still like to know the reasons for above. Thanks for the help! -xabhi > invalid header errror > --------------------- > > Key: AMQ-5975 > URL: https://issues.apache.org/jira/browse/AMQ-5975 > Project: ActiveMQ > Issue Type: Bug > Components: stomp > Affects Versions: 5.11.1 > Reporter: Abhi > Labels: stomp, v1.1, v1.2 > > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: encoding CONNECT frame > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H passcode: > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H > accept-version:1.0,1.1,1.2 > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H host:bismuth31.nyc > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H login: > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: sent 73 bytes > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: received 123 bytes > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: decoding CONNECTED frame > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H server:ActiveMQ/5.11.1 > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H heart-beat:0,0 > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H > session:ID:bismuth31.nyc-47753-1442302511794-1:3 > # 2015/09/15-03:35:13 stomp_producer.pl[29263.0]: H version:1.2 > [20150915 03:35:13.507 Net::Stomp::connect():332 WARN] Error while connecting > to the message broker: invalid header: > session:ID:bismuth31.nyc-47753-1442302511794-1:3 > This is happening because session header contains ':' in its value which > fails the check when using STOMPv1.1 protocol. > ActiveMQ generates a default client id if one is not provided at the start > and uses that to set session-id. But the session header cannot contain ':'. > (https://github.com/apache/activemq/blob/138e52b08c2f49b730817932a6e63f2a135854f1/activemq-client/src/main/java/org/apache/activemq/util/IdGenerator.java > and > https://github.com/apache/activemq/blob/87fd0a9e054017254c3857b245ca6fb9047ccc4f/activemq-stomp/src/main/java/org/apache/activemq/transport/stomp/ProtocolConverter.java#L797) > We can use generateSanitizedId() here to avoid this > issue(https://github.com/apache/activemq/blob/87fd0a9e054017254c3857b245ca6fb9047ccc4f/activemq-stomp/src/main/java/org/apache/activemq/transport/stomp/ProtocolConverter.java#L797) -- This message was sent by Atlassian JIRA (v6.3.4#6332)