2016-09-11 2 views
0

Первый пользователь верблюда/JMS/acivemq.cant 'get camel route to JMs active mq working

Я установил маршрут верблюда jms, и я пытаюсь отправить тестовый текст и увидеть его в активном mq GUI http://127.0.0.1:8161/admin/topics.jsp, но я ничего не вижу. Это мой первый раз, пытаясь заставить все это работать и действительно нужно что-то увидеть в активном mq, чтобы доказать, что это работает правильно.

Вот верблюд маршрут

 <cm:property-placeholder persistent-id="com.srcinc.ogre.alerts"> 
    <cm:default-properties> 
     <cm:property name="jmsHostName" value="localhost" /> 
     <cm:property name="jmsPort" value="61616" /> 
     <cm:property name="jmsUserName" value="system" /> 
     <cm:property name="jmsPassword" value="manager" /> 
    </cm:default-properties> 
    </cm:property-placeholder> 
    <bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"> 
    <property name="brokerURL" value="tcp://${jmsHostName}:${jmsPort}" /> 
    <property name="userName" value="${jmsUserName}" /> 
    <property name="password" value="${jmsPassword}" /> 
    </bean> 
    <bean id="pooledJmsConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory" 
    init-method="start" destroy-method="stop"> 
    <property name="maxConnections" value="8" /> 
    <property name="connectionFactory" ref="jmsConnectionFactory" /> 
    </bean> 
    <bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration"> 
    <property name="connectionFactory" ref="pooledJmsConnectionFactory" /> 
    <property name="concurrentConsumers" value="10" /> 
    </bean> 
    <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent"> 
    <property name="configuration" ref="jmsConfig" /> 
    </bean> 
    <camelContext xmlns="http://camel.apache.org/schema/blueprint"> 
    <route id="AlertProcessorJMSDistributionRoute"> 
     <from uri="vm:send-jms-alert?multipleConsumers=true" /> 
     <to uri="activemq:topic:Alerts" /> 
    </route> 
    </camelContext> 

Вот мой Java-код, который ссылается на соответствующий маршрут верблюда.

private static final String VM__JMS_ROUTE = "vm::send-jms-alert"; 
    private ProducerTemplate mProducer; 
    mProducer = new DefaultCamelContext().createProducerTemplate(); 
    mProducer.sendBody(VM__JMS_ROUTE, "Testing 123"); 
+0

Там нет необходимости в том, что многие восклицательных знаков, а не остановиться на ваш вопрос. – kaveh

+0

, прежде чем мне всегда приходилось беспокоиться о том, чтобы не слишком долго задавать вопросы, поэтому я всегда старался не задавать слишком много вопросов. Я никогда не сталкивался с проблемой слишком большого количества кода. Какие-нибудь идеи кто-нибудь? Я могу видеть сообщения ActiveMQAdvisory.Connection, установленные в Active MQ, но я не вижу свою очередь или тему – user3470688

ответ

0

В коде Java вы должны иметь только одну толстую кишку, vm:send-jms-alert вместо vm::send-jms-alert