31.9. Camel을 사용하여 메시지 전송 및 수신 및 JMSReplyTo 정보
JMS 구성 요소는 복잡하고 경우에 따라 작동하는 방식에 주의해야 합니다. 이것은 찾기 위한 영역/파이프트의 일부에 대한 간략한 요약입니다.
Camel이 JMSProducer
를 사용하여 메시지를 전송하면 다음 조건을 확인합니다.
- 상기 메시지 교환 패턴은, The message exchange pattern,
-
JMSReplyTo
가 끝점에 또는 메시지 헤더에 설정되었는지 여부 -
JMS 끝점에 다음 옵션이 설정되어 있는지 여부:
disableReplyTo
,preserveMessageQos
,explicitQosEnabled
.
이 모든 작업은 사용 사례를 지원하도록 이해하고 구성하는 데 복잡할 수 있습니다.
31.9.1. JmsProducer 링크 복사링크가 클립보드에 복사되었습니다!
JmsProducer
는 구성에 따라 다음과 같이 작동합니다.
교환 패턴 | 기타 옵션 | 설명 |
---|---|---|
InOut | - |
Camel은 응답을 예상하고 임시 |
InOut |
|
Camel은 응답을 예상하고 메시지를 보낸 후 지정된 |
InOnly | - | Camel은 메시지를 전송하고 응답을 예상하지 않습니다. |
InOnly |
|
기본적으로 Camel은 |
31.9.2. JmsConsumer 링크 복사링크가 클립보드에 복사되었습니다!
JmsConsumer
는 구성에 따라 다음과 같이 작동합니다.
교환 패턴 | 기타 옵션 | 설명 |
---|---|---|
InOut | - |
Camel은 응답을 |
InOnly | - | Camel은 패턴은 InOnly 이므로 회신을 다시 보내지 않습니다. |
- |
| 이 옵션은 응답을 표시하지 않습니다. |
따라서 교환에 설정된 메시지 교환 패턴에 주의하십시오.
경로 중간에 있는 JMS 대상에 메시지를 보내는 경우 사용할 교환 패턴을 지정할 수 있습니다. 자세한 내용은 Request Reply에서 참조하십시오.
이 기능은 InOnly
메시지를 JMS 항목에 보내려는 경우에 유용합니다.
from("activemq:queue:in") .to("bean:validateOrder") .to(ExchangePattern.InOnly, "activemq:topic:order") .to("bean:handleOrder");
from("activemq:queue:in")
.to("bean:validateOrder")
.to(ExchangePattern.InOnly, "activemq:topic:order")
.to("bean:handleOrder");