activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (Resolved) (JIRA)" <>
Subject [jira] [Resolved] (AMQ-3543) STOMP connector: unexpected reply-to value for remote temporary topic
Date Fri, 14 Oct 2011 20:54:12 GMT


Timothy Bish resolved AMQ-3543.

    Resolution: Fixed

Fix applied in trunk, the reply-to destinations will be set to the same as what was given
in the original message.  The remote names shouldn't leak from the Stomp transport.  Test
case added.
> STOMP connector: unexpected reply-to value for remote temporary topic
> ---------------------------------------------------------------------
>                 Key: AMQ-3543
>                 URL:
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: stomp
>    Affects Versions: 5.x
>            Reporter: Christopher Barrow
>            Assignee: Timothy Bish
>            Priority: Minor
>             Fix For: 5.6.0
>         Attachments:
> The reply-to header on a MESSAGE frame resulting from the sending of a message (SEND)
with the reply-to header set to a temporary topic is in the form /temp-topic/<local-temp-topic-name>
rather than the expected 
> /remote-temp-topic/<system_generated_name>
> This only happens when the same connection is used for sending and receiving messages.
When a temporary queue is used, the reply-to appears as /remote-temp-queue/xxx as expected.
So even if one takes the position that it is reasonable for the local name to be used given
that everything is on the same connection, there is an inconsistency between the topic and
queue cases. For our purposes we would prefer that the remote form be used always, because
we are actually servicing two different users on the same connection (first user does the
SEND, second user receives the MESSAGE).
> Test case for the underlying ActiveMQ bug is attached:
> To reproduce, drop this file into $ACTIVEMQ_HOME/example/src, edit build.xml in the example
> directory to add the following:
> <target name="bug" depends="compile" description="Runs test case for replyTo TempTopic
> <echo>Running a Stomp example</echo>
> <java classname="StompRemoteTempTopic" fork="yes" maxmemory="100M">
> <classpath refid="javac.classpath" />
> <jvmarg value="-server" />
> </java>
> </target>
> and run by issuing the command "ant bug". Output is as follows:
> [echo] Running a Stomp example
> [java] =====================================================
> [java] Test run using temporary topic
> [java] -----------------------------------------------------
> [java] Sending request message: SEND with reply-to=/temp-topic/2C26441740C0ECC9tt1
> [java] Received request message: MESSAGE with reply-to=/temp-topic/2C26441740C0ECC9tt1
> [java] Response MESSAGE received
> [java] =====================================================
> [java] Test run using temporary queue
> [java] -----------------------------------------------------
> [java] Sending request message: SEND with reply-to=/temp-queue/2C26441740C0ECC9tt1
> [java] Received request message: MESSAGE with reply-to=/remote-temp-queue/ID:ChrisBarrow-lap-61815-1318539910206-4:6:1
> [java] Response MESSAGE received
> This makes it easy to see that for the queue case the reply-to is set to the remote temporary
queue but for the topic case the local temporary topic is specified.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message