Pregunta

Estoy tratando de comenzar una demostración simple con ActiveMQ que demuestre una ruta TCP a TCP. Estoy codificando los puntos finales y las rutas en un contexto de camello en mi archivo de configuración activemq.xml.

<camelContext id="camel" xmlns="http://activemq.apache.org/camel/schema/spring">

    <package>org.myorg.codec</package>

    <endpoint id="listener_A" uri="mina:tcp://localhost:42000?sync=false&amp;textline=true"/>
    <endpoint id="listener_B" uri="mina:tcp://localhost:42001?sync=false&amp;textline=true"/>

    <route>
        <from uri="activemq:listener_A"/>
        <to uri="activemq:listener_B"/>
    </route>
    <route>
        <from uri="activemq:listener_B"/>
        <to uri="activemq:listener_A"/>
    </route>
</camelContext>

¿Alguna idea de por qué esto no funciona?

El servidor AMQ no parece estar abriendo un puerto de escucha.

Editar: La intención aquí, como una simple demostración, es conectarse a ActiveMQ con dos terminales telnet (A y B) y poder enrutar mensajes de uno a otro a través del servidor de cola de mensajes. Más tarde, puedo intentar filtrar o enrutar según el contenido.

¿Fue útil?

Solución

Estoy un poco confundido por su archivo de configuración. ¿Qué estás tratando de hacer exactamente?

Ha definido 2 puntos finales para usar MINA (que no usará ActiveMQ en absoluto); entonces está utilizando una ruta desde una cola ActievMQ listener_A a listener_B luego listener_B a listener_A (que es un bucle recursivo).

Tal vez si comienzas a describir lo que quieres hacer, podemos averiguar cómo debería ser el XML.

Por cierto, si solo quiere referirse a los puntos finales que ha definido, use el atributo ref = " name " en lugar de uri = " ... " .

por ejemplo

<route>
  <from ref="listener_A"/>
  <to ref="listener_B"/>
</route>

Dicho todo esto, tiende a mejorar & amp; soporte más rápido en Camel a través del Foro de usuarios de Camel

Otros consejos

Más sobre esto:

Cuando el punto final se define como una conexión mina tcp, no puede identificarse como " activemq :: listener_A "

<endpoint id="listener_A" uri="mina:tcp://localhost:42000?sync=false&amp;textline=true"/>   

esto está mal:

  <from uri="activemq:listener_A"/>  

esto funciona:

  <from ref="listener_A"/>  

también lo hace:

  <from ref="mina:tcp://localhost:42000?sync=false&amp;textline=true"/>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top