Pregunta

mi ruta camello se da a continuación

 <camelContext id="camel" xmlns="http://camel.apache.org/schema/spring" >
    <route>
      <from uri="bean:SendClass?method=send" />
      <to uri="jms:MyQueue" pattern="InOnly" />
    </route>
    <route>
    <from uri="jms:MyQueue" />
    <to uri="bean:recvClass?method=recv" />
    </route>
  </camelContext>

El método de envío envía mensajes cuando se activa por una tercera parte Pojo en algún intervals.But irregular, el problema creo que es el camello está reiniciando las rutas vez que el mensaje ha sido recibido por frijol recv y volver a enviar el mismo mensaje (cien de ellas en un segundo) .Ideally quiero que se enviar el mensaje cuando el método de envío se activa y un nuevo mensaje ha sido creado (es decir cola JMS debe estar teniendo de mensaje único) .how hago esto?

posibles soluciones ser:

  1. es su algún atributo cual pueda colocar dentro de la <from.../> hacer esto?
  2. escribir un procesador de filtro de mensaje único de entre el grano de envío y la cola.
  3. ¿Es su alguna otra manera de encaminar sin usar el <from uri="bean:..." />

Gracias sanre6

¿Fue útil?

Solución

No debe tener la primera ruta. Cuando se hace esto le dice a camello constantemente invoca el método de envío en que el frijol y la ruta de la misma. Y por lo tanto por eso que ver 100s de mensajes por segundo.

En su lugar debe utilizar algún API Camel desde dentro de su código de frijol y enviar el mensaje a la cola JMS. Por ejemplo usando un ProducerTemplate.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top