使用Apache Camel route订阅/使用Java中的HornetQ主题

使用Apache Camel route订阅/使用Java中的HornetQ主题,java,apache-camel,hornetq,Java,Apache Camel,Hornetq,我想转换成java(即不要使用spring DSL)。我可以支持这些对象,但对于如何在路由uri(链接示例的第34行)中引用JmsComponent bean感到困惑 Java示例: // Stand up JndiTemplate Properties env = new Properties(); env.setValue("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");

我想转换成java(即不要使用spring DSL)。我可以支持这些对象,但对于如何在路由uri(链接示例的第34行)中引用JmsComponent bean感到困惑

Java示例:

    // Stand up JndiTemplate
    Properties env = new Properties();
    env.setValue("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
    env.setValue("java.naming.provider.url","jnp://localhost:1099");
    env.setValue("java.naming.factory.url.pkgs","org.jnp.interfaces:org.jboss.naming");
    JndiTemplate template = new JndiTemplate;
    template.setEnvironment(env);

    // Stand up JndiObjectFactoryBean
    JndiObjectFactoryBean factory = new JndiObjectFactoryBean();
    factory.setJndiTemplate(template);
    factory.setJndiName("ConnectionFactory");

    // Stand up JmsComponent
    JmsComponent component = new JmsComponent();
    component.setSonnectionFactory(factory);

    // Stand up camel context and route
    final CamelContext camelContext = new DefaultCamelContext();
    camelContext.addRoutes(new RouteBuilder() {
        public void configure() {
            from("WHAT_GOES_HERE:topic:myTopic").to("direct:a")
        }
    });
    camelContext.setTracing(true);
    camelContext.start();
问题: 如何在from URI中引用我的JMS组件?和/或使用Java/Apache Camel有更好的方法吗?添加以下内容:

camelContext.addComponent("test-jms",component);
并替换:

public void configure() {
    from("WHAT_GOES_HERE:topic:myTopic").to("direct:a")
}
与:


更多信息请点击此处:

感谢您的回复。。。我会试试看。
public void configure() {
    from("test-jms:topic:myTopic").to("direct:a")
}