我已经设置了ActiveMQ,并且可以使用“ dynamicTopics / MyTopic”创建/连接到主题。这很好用:

    Properties env = new Properties( );
    env.setProperty(Context.INITIAL_CONTEXT_FACTORY,"org.apache.activemq.jndi.ActiveMQInitialContextFactory");
    env.setProperty(Context.PROVIDER_URL,"tcp://myhostname:xxxxx");
    javax.naming.Context ctx = new InitialContext(env);

    InitialContext jndi = new InitialContext(env);

    // Look up a JMS connection factory
    TopicConnectionFactory conFactory = (TopicConnectionFactory)jndi.lookup("TopicConnectionFactory");

    // Create a JMS connection
    TopicConnection connection = conFactory.createTopicConnection(username,password);

    Topic chatTopic = (Topic)jndi.lookup("dynamicTopics/MyTopic");


我想连接到已经存在的主题,如果不存在则不动态创建该主题,我该怎么做?

干杯,

皮特

最佳答案

尽管您不需要使用AMQ手动创建目的地,但始终可以使用该选项。基本上,您可以更改安全设置,以仅允许管理员创建目的地。请参阅AMQ常见问题解答:

http://activemq.apache.org/how-do-i-create-new-destinations.html

问候

提姆
www.fusesource.com

关于java - Apache ActiveMQ非动态连接到主题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4865423/

10-13 21:47