Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-3155

Bad conversion from stomp topic to activeMQ topic

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Won't Fix
    • 5.4.2
    • None
    • Connector
    • None
    • Win7 64bits, jre 1.6.0_23

    • Patch Available

    Description

      From several days, I'm working on the authentication and authorization topics for a stomp process. I identified a strange behavior. The topics with sub destinations (ie: /topic/subject/hello ) didn't seemed to be handled by a virtual topic rule (ie: sub1.> ).

      It seems that the stomp topic is not properly converted by when it is handled by ActiveMQ and the topic ( /topic/subject/hello ) is considered as "topic://subject/hello" and not as "topic://subject.hello"

      So i implemented an authorization broker to correct it:
      <i>
      public class MyAuthorizationBroker extends AuthorizationBroker {

      public MyAuthorizationBroker(Broker next,
      AuthorizationMap authorizationMap)

      { super(next, authorizationMap); }

      public void send(ProducerBrokerExchange producerExchange, Message messageSend) throws Exception

      { ActiveMQDestination dest = correctStompTopic(messageSend.getDestination()); messageSend.setDestination(dest); super.send(producerExchange, messageSend); }

      public Subscription addConsumer(ConnectionContext context, ConsumerInfo info) throws Exception

      { ActiveMQDestination dest = correctStompTopic(info.getDestination()); info.setDestination(dest); return super.addConsumer(context, info); }

      public ActiveMQDestination correctStompTopic(ActiveMQDestination destination)

      { String aqdest = destination.getPhysicalName().replace('/', '.'); destination.setPhysicalName(aqdest); return destination; }

      }
      </i>

      I hope it could be interesting.

      Best regards

      michael

      Attachments

        Activity

          People

            tabish Timothy A. Bish
            barroco Michael Barroco
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 0.5h
                0.5h
                Remaining:
                Remaining Estimate - 0.5h
                0.5h
                Logged:
                Time Spent - Not Specified
                Not Specified