Hello, >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 in some cases (maybe NOT ALL): 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; } } For my project, it seems to work, I hope this could be helpfull and I'm very interested if somebody find a best way to do it. Best regards michael PS: I created a new issue -- View this message in context: http://activemq.2283324.n4.nabble.com/Stomp-Topic-tp3235572p3235572.html Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.