179.4.4. 쿼리 매개변수(93 매개변수):

이름설명기본값유형

clientID( 일반)

사용할 JMS 클라이언트 ID를 설정합니다. 이 값은 지정된 경우 고유해야 하며 단일 JMS 연결 인스턴스에서만 사용할 수 있습니다. 일반적으로 내구성 주제 서브스크립션에만 필요합니다. Apache ActiveMQ를 사용하는 경우 대신 가상 주제를 사용할 수 있습니다.

 

문자열

ConnectionFactory (일반)

setTemplateConnectionFactory(ConnectionFactory) 또는 setListenerConnectionFactory(ConnectionFactory)에 대해 연결 팩토가 지정되지 않은 경우 사용할 기본 연결 팩토리를 설정합니다.

 

ConnectionFactory

disableReplyTo (common)

Camel이 메시지의 JMSReplyTo 헤더를 무시할지 여부를 지정합니다. true인 경우 Camel은 JMSReplyTo 헤더에 지정된 대상으로 회신을 다시 보내지 않습니다. Camel을 경로에서 사용하고 Camel이 자동으로 응답 메시지를 처리하므로 응답 메시지를 처리하도록 하려면 이 옵션을 사용할 수 있습니다. Camel을 다른 메시지 브로커 간에 프록시로 사용하고 한 시스템에서 다른 시스템으로 메시지를 라우팅하려는 경우에도 이 옵션을 사용할 수 있습니다.

false

boolean

durableSubscriptionName (common)

내구성 주제 서브스크립션을 지정하기 위한 내구성 있는 구독자 이름입니다. clientId 옵션도 구성해야 합니다.

 

문자열

jmsMessageType (common)

JMS 메시지를 전송하기 위해 특정 javax.jms.Message 구현을 강제로 사용할 수 있습니다. 가능한 값은 Bytes, Map, Object, Stream, Text입니다. 기본적으로 Camel은 본문 유형에서 사용할 JMS 메시지 유형을 결정합니다. 이 옵션을 사용하면 지정할 수 있습니다.

 

JmsMessageType

testConnectionOnStartup (일반)

시작 시 연결을 테스트할지 여부를 지정합니다.Specifies whether to test the connection on startup. 이를 통해 Camel이 모든 JMS 소비자가 JMS 브로커에 대한 유효한 연결을 시작하게 합니다. 연결을 허용할 수 없는 경우 Camel은 시작 시 예외를 throw합니다. 이렇게 하면 Camel이 실패한 연결로 시작되지 않습니다. JMS 생산자도 테스트 중입니다.

false

boolean

acknowledgementModeName (consumer)

SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE 중 하나인 JMS 승인 이름

AUTO_ ACKNOWLEDGE

문자열

asyncConsumer (Consumer)

JmsConsumer가 Exchange를 비동기적으로 처리하는지 여부입니다. 활성화된 경우 JmsConsumer는 이전 메시지가 비동기적으로(Asynchronous Routing Engine에 의해) 비동기적으로 처리되는 동안 JMS 대기열에서 다음 메시지를 선택할 수 있습니다. 즉, 메시지가 100% 엄격하게 정렬되어 처리되지 않을 수 있습니다. 비활성화된 경우 Exchange는 JmsConsumer가 JMS 대기열에서 다음 메시지를 선택하기 전에 완전히 처리됩니다. 트랜잭션이 활성화된 경우 트랜잭션이 동기적으로 실행되어야 하므로 비동기Consumer=true가 비동기적으로 실행되지 않습니다(Camel 3.0은 비동기 트랜잭션을 지원할 수 있음).

false

boolean

AutoStartup (consumer)

소비자 컨테이너가 자동으로 시작되어야 하는지 여부를 지정합니다.

true

boolean

bridgeErrorHandler (consumer)

소비자를 Camel 라우팅 오류 처리기에 브리징할 수 있습니다. 이는 소비자가 들어오는 메시지를 선택하는 동안 예외가 발생한 것을 의미하며, 이제 메시지로 처리되어 라우팅 오류 처리기에 의해 처리됩니다. 기본적으로 소비자는 org.apache.camel.spi.ExceptionHandler를 사용하여 WARN 또는 ERROR 수준에서 기록되고 무시되는 예외를 처리합니다.

false

boolean

cacheLevel (consumer)

기본 JMS 리소스의 ID별 캐시 수준을 설정합니다. 자세한 내용은 cacheLevelName 옵션을 참조하십시오.

 

int

cacheLevelName (consumer)

기본 JMS 리소스의 이름으로 캐시 수준을 설정합니다. 가능한 값은 CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE 및 CACHE_SESSION입니다. 기본 설정은 CACHE_AUTO입니다. 자세한 내용은 Spring 문서 및 트랜잭션 캐시 수준을 참조하십시오.

CACHE_AUTO

문자열

concurrentConsumers (consumer)

JMS에서 사용할 때 기본 동시 소비자 수를 지정합니다( JMS를 통한 요청/복제용 아님). 스레드의 동적 확장/다운을 제어하려면 maxMessagesPerTask 옵션도 참조하십시오. JMS를 통해 요청/응답 시 replyToConcurrentConsumers 옵션은 응답 메시지 리스너에서 동시 소비자 수를 제어하는 데 사용됩니다.

1

int

ArtemisConsumerPriority (consumer)

소비자 우선 순위를 사용하면 우선 순위가 높은 소비자가 활성화된 동안 메시지를 수신할 수 있습니다. 일반적으로 큐에 연결된 활성 소비자는 라운드 로빈 방식으로 메시지를 수신합니다. 소비자 우선순위를 사용하는 경우 동일한 높은 우선 순위로 활성 소비자가 여러 개인 경우 메시지가 라운드 로빈 방식으로 전달됩니다. 메시지는 우선 순위가 높은 소비자가 메시지를 사용할 수 있는 크레딧이 없거나 높은 우선 순위 소비자는 메시지를 수락하지 않은 경우에만 우선 순위가 낮은 소비자로 이동합니다. 예를 들어 소비자와 연결된 선택기 기준을 충족하지 않기 때문입니다.

 

int

maxConcurrentConsumers (Consumer)

JMS에서 사용할 때 최대 동시 소비자 수를 지정합니다( JMS를 통한 요청/복제용 아님). 스레드의 동적 확장/다운을 제어하려면 maxMessagesPerTask 옵션도 참조하십시오. JMS를 통해 요청/응답 시 replyToMaxConcurrentConsumers 옵션은 응답 메시지 리스너에서 동시 소비자 수를 제어하는 데 사용됩니다.

 

int

응답 대상 (consumer)

Message.getJMSReplyTo()의 들어오는 값을 재정의하는 명시적 ReplyTo 대상을 제공합니다.

 

문자열

replyToDeliveryPersistent (consumer)

응답에 대해 기본적으로 영구 전달을 사용할지 여부를 지정합니다.

true

boolean

선택기 (소비자)

사용할 JMS 선택기 설정

 

문자열

SubscriptionDurable (consumer)

서브스크립션의 내구성을 유지할지 여부를 설정합니다. 사용할 내구성 서브스크립션 이름은 subscriptionName 속성을 통해 지정할 수 있습니다. 기본값은 false입니다. 일반적으로 subscriptionName 값과 함께 사용 가능한 서브스크립션을 등록하려면 true로 설정합니다(메시지 리스너 클래스 이름이 서브스크립션 이름으로 충분하지 않은 경우). 주제(pub-sub 도메인)를 청취할 때만 의미가 있으므로 이 방법은 pubSubDomain 플래그를 전환합니다.

false

boolean

subscriptionName (consumer)

생성할 서브스크립션의 이름을 설정합니다. 공유 또는 내구성이 있는 주제(pub-sub 도메인)의 경우 적용됩니다. 서브스크립션 이름은 이 클라이언트의 JMS 클라이언트 ID 내에서 고유해야 합니다. 기본값은 지정된 메시지 리스너의 클래스 이름입니다. 참고: JMS 2.0이 필요한 공유 서브스크립션을 제외하고 각 서브스크립션에 대해 1개의 동시 소비자(이 기본값은 이 메시지 리스너 컨테이너)만 허용됩니다.

 

문자열

subscriptionShared (consumer)

서브스크립션을 공유할지 여부를 설정합니다. 사용할 공유 서브스크립션 이름은 subscriptionName 속성을 통해 지정할 수 있습니다. 기본값은 false입니다. 일반적으로 subscriptionName 값과 함께 공유 서브스크립션을 등록하려면 true로 설정합니다(메시지 리스너 클래스 이름이 서브스크립션 이름으로 충분하지 않은 경우). 공유 서브스크립션도 내구성이 있을 수 있으므로 이 플래그도 subscriptionDurable과 결합될 수 있습니다. 주제(pub-sub 도메인)를 청취할 때만 의미가 있으므로 이 방법은 pubSubDomain 플래그를 전환합니다. JMS 2.0 호환 메시지 브로커가 필요합니다.

false

boolean

acceptMessages whileeStopping (consumer)

소비자가 중지되는 동안 메시지를 수락하는지 여부를 지정합니다. 대기열에 포함된 메시지가 여전히 있는 동안 런타임에 JMS 경로를 시작하고 중지하는 경우 이 옵션을 활성화할 수 있습니다. 이 옵션이 false이고 JMS 경로를 중지하면 메시지가 거부될 수 있으며 JMS 브로커는 재전송을 시도해야 하지만 다시 거부될 수 있으며 결국 메시지가 JMS 브로커의 dead letter 큐에서 이동될 수 있습니다. 이 옵션을 사용하려면 이 옵션을 사용하는 것이 좋습니다.

false

boolean

allowReplyManagerQuickStop (consumer)

요청-reply 메시징에 대해 응답 관리자에게 사용되는 DefaultMessageListenerContainer에서 사용되는지 여부에 따라 JmsConfiguration#isAcceptMessagesWhileStopping()이 활성화되어 있고 org.apache.camel.Camel.CamelContext가 현재 중지되는 경우 DefaultMessageListenerContainer#runningAllowed() 플래그가 빠르게 중지될 수 있습니다. 이 빠른 중지 기능은 일반 JMS 소비자에서 기본적으로 활성화되어 있지만 응답 관리자를 위해 이 플래그를 활성화해야 합니다.

false

boolean

consumerType (consumer)

사용할 소비자 유형은 Simple, Default 또는 Custom 중 하나일 수 있습니다. 소비자 유형은 사용할 Spring JMS 리스너를 결정합니다. 기본값은 org.springframework.jms.listener.DefaultMessageListenerContainer를 사용하며 Simple은 org.springframework.jms.listener.SimpleMessageListenerContainer를 사용합니다. Custom이 지정되면 messageListenerContainerFactory 옵션에 의해 정의된 MessageListenerContainerFactory는 사용할 org.springframework.jms.listener.AbstractMessageListenerContainer를 결정합니다.

기본값

ConsumerType

defaultTaskExecutorType (consumer)

소비자 끝점과 생산자 끝점의 ReplyTo 소비자 모두에 대해 DefaultMessageListenerContainer에서 사용할 기본 TaskExecutor 유형을 지정합니다. 가능한 값: SimpleAsync (SAP의 SimpleAsyncTaskExecutor) 또는 ThreadPool (s Spring의 ThreadPoolTaskExecutor 사용) - 캐시된 threadpool-like입니다. 설정하지 않으면 기본적으로 소비자 엔드포인트에 대해 캐시된 스레드 풀을 사용하고 응답 소비자에게 SimpleAsync를 사용하는 이전 동작으로 설정됩니다. ThreadPool은 동적으로 늘어나고 동시 소비자를 줄이는 탄력적 구성의 스레드 쓰레기를 줄이는 것이 좋습니다.

 

DefaultTaskExecutor Type

eagerLoadingOfProperties (consumer)

메시지가 로드되는 즉시 JMS 속성 및 페이로드를 신속하게 로드할 수 있습니다. 이 경우 JMS 속성이 필요하지 않기 때문에 일반적으로 비효율적일 수 있지만 기본 JMS 공급자 및 JMS 속성의 사용 문제를 조기에 포착할 수 있습니다.

false

boolean

예외 처리기 (consumer)

소비자가 사용자 지정 ExceptionHandler를 사용하도록 하려면 다음을 수행합니다. bridgeErrorHandler 옵션이 활성화되어 있는지 확인한 후 이 옵션은 사용되지 않습니다. 기본적으로 소비자는 WARN 또는 ERROR 수준에서 기록되고 무시되는 예외를 처리합니다.

 

ExceptionHandler

exchangePattern (consumer)

소비자가 교환을 생성할 때 교환 패턴을 설정합니다.

 

ExchangePattern

exposeListenerSession (consumer)

메시지를 사용할 때 리스너 세션을 노출해야 하는지 여부를 지정합니다.

false

boolean

replyToSameDestination Allowed (consumer)

JMS 소비자가 소비자가 사용할 때 사용하는 것과 동일한 대상으로 응답 메시지를 보낼 수 있는지 여부입니다. 이를 통해 무한 루프를 사용하지 않도록 하고 동일한 메시지를 자체에 보냅니다.This prevents an endless loop by consuming and sending back the same message to itself.

false

boolean

taskExecutor (consumer)

메시지를 사용하기 위한 사용자 지정 작업 executor를 지정할 수 있습니다.

 

TaskExecutor

deliveryDelay (producer)

JMS에 대한 전송 호출에 사용할 전달 지연을 설정합니다. 이 옵션에는 JMS 2.0 호환 브로커가 필요합니다.

-1

long

deliveryMode (producer)

사용할 전달 모드를 지정합니다. 가능한 값은 javax.jms.DeliveryMode에서 정의한 값입니다. NON_PERSISTENT = 1 및 PERSISTENT = 2.

 

정수

deliveryPersistent (producer)

기본적으로 영구 제공이 사용되는지 여부를 지정합니다.

true

boolean

explicitQosEnabled (producer)

메시지를 보낼 때 서비스의 deliveryMode, 우선순위 또는 timeToLive 특성을 사용해야 하는 경우 설정합니다. 이 옵션은 Spring의 JmsTemplate을 기반으로 합니다. deliveryMode, priority 및 timeToLive 옵션이 현재 엔드포인트에 적용됩니다. 이는 메시지 세분화에서 작동하는 preserveMessageQos 옵션과 달리 Camel In 메시지 헤더에서만 QoS 속성을 읽습니다.

false

부울

formatDateHeadersToIso8601 (producer)

ISO 8601 표준에 따라 날짜 헤더를 포맷해야 하는지 여부를 설정합니다.

false

boolean

preserveMessageQos (producer)

JMS 끝점의 QoS 설정이 아니라 메시지에 지정된 QoS 설정을 사용하여 메시지를 보내려면 true로 설정합니다. 다음 세 가지 헤더는 JMSPriority, JMSDeliveryMode 및 JMSExpiration으로 간주됩니다. 전부 또는 일부만 제공할 수 있습니다. 제공되지 않는 경우 Camel은 엔드포인트의 값을 사용하도록 대체합니다. 따라서 이 옵션을 사용하면 헤더가 끝점의 값을 재정의합니다. 반면 explicitQosEnabled 옵션은 메시지 헤더의 값이 아닌 끝점에 설정된 옵션만 사용합니다.

false

boolean

우선 순위 (producer)

1보다 큰 값은 보낼 때 메시지 우선 순위를 지정합니다(여기서 0이 가장 낮은 우선 순위이고 9가 가장 높은 경우). 이 옵션을 적용하려면 explicitQosEnabled 옵션도 활성화해야 합니다.

4

int

replyToConcurrentConsumers (producer)

JMS를 통해 요청/reply를 수행할 때 기본 동시 소비자 수를 지정합니다. 스레드의 동적 확장/다운을 제어하려면 maxMessagesPerTask 옵션도 참조하십시오.

1

int

replyToMaxConcurrent Consumers (producer)

JMS에서 요청/reply를 사용할 때 최대 동시 소비자 수를 지정합니다. 스레드의 동적 확장/다운을 제어하려면 maxMessagesPerTask 옵션도 참조하십시오.

 

int

replyToOnTimeoutMax ConcurrentConsumers (producer)

JMS를 통해 요청/reply를 사용할 때 시간 초과가 발생한 경우 계속 라우팅할 수 있는 최대 동시 소비자 수를 지정합니다.

1

int

replyToOverride (producer)

JMS 메시지에서 명시적 ReplyTo 대상을 제공하여 replyTo 설정을 재정의합니다. 메시지를 원격 대기열로 전달하고 ReplyTo 대상에서 응답 메시지를 수신하려는 경우 유용합니다.

 

문자열

replyToType (producer)

를 사용하면 JMS를 통해 요청/reply를 수행할 때 replyTo 큐에 사용할 유형의 전략을 명시적으로 지정할 수 있습니다. 가능한 값은 임시, 공유 또는 제외입니다. 기본적으로 Camel은 임시 대기열을 사용합니다. 그러나 replyTo가 구성된 경우 기본적으로 Shared가 사용됩니다. 이 옵션을 사용하면 공유 대기열 대신 전용 대기열을 사용할 수 있습니다. 자세한 내용은 Camel JMS 설명서를 참조하십시오. 특히 클러스터형 환경에서 실행 중인 경우 미치는 영향에 대한 참고 사항 및 공유 응답 대기열이 대체 시간 및 필수 값보다 성능이 낮다는 사실에서 참조하십시오.

 

ReplyToType

requestTimeout (producer)

InOut Exchange Pattern(밀리초)을 사용할 때 응답을 기다리는 시간 초과입니다. 기본값은 20초입니다. 이 엔드포인트 구성 시간 값을 재정의하기 위해 CamelJmsRequestTimeout 헤더를 포함할 수 있으므로 메시지당 개별 시간 제한 값이 있습니다. requestTimeoutCheckerInterval 옵션도 참조하십시오.

20000

long

TimeToLive (producer)

메시지를 보낼 때 메시지의 TTL(밀리초)을 지정합니다.

-1

long

additional Headers(producer) 허용

이 옵션은 JMS 사양에 따라 유효하지 않은 값이 있을 수 있는 추가 헤더를 허용하는 데 사용됩니다. 예를 들어 WMQ와 같은 일부 메시지 시스템은 바이트 배열 또는 기타 잘못된 유형의 값이 포함된 접두사 JMS_IBM_MQMD_를 사용하여 헤더 이름으로 이 작업을 수행합니다. 여러 헤더 이름을 쉼표로 구분하여 지정하고 와일드카드 일치에 접미사로 사용할 수 있습니다.

 

문자열

allownullBody (producer)

본문 없이 메시지를 보낼 수 있는지 여부입니다. 이 옵션이 false이고 메시지 본문이 null이면 JMSException이 발생합니다.

true

boolean

alwaysCopyMessage (producer)

true인 경우 Camel은 전송을 위해 생산자에 전달될 때 항상 메시지의 JMS 메시지 사본을 만듭니다. replyToDestinationSelectorName이 설정된 경우와 같이 메시지를 복사하는 데 필요한 경우 Camel은 replyToDestinationSelectorName이 설정된 경우 alwaysCopyMessage 옵션을 true로 설정합니다.

false

boolean

correlationProperty (producer)

이 JMS 속성을 사용하여 JMSCorrelationID 속성 대신 InOut exchange 패턴(request-reply) 메시지의 상관 관계를 유지할 수 있습니다. 이렇게 하면 JMSCorrelationID JMS 속성을 사용하여 메시지의 상관 관계가 없는 시스템과 메시지를 교환할 수 있습니다. 사용된 JMSCorrelationID는 Camel에 의해 사용되거나 설정되지 않습니다. 이 속성의 값은 동일한 이름의 메시지 헤더에 제공되지 않는 경우 생성됩니다.

 

문자열

disableTimeToLive (producer)

이 옵션을 사용하여 실행 중인 시간을 강제 비활성화하십시오. 예를 들어 JMS를 요청/재정하는 경우 Camel은 기본적으로 requestTimeout 값을 전송 중인 메시지 라이브 시간으로 사용합니다. 문제는 발신자와 수신자 시스템이 시계를 동기화해야 하므로 시계가 동기화되어 있다는 것입니다. 항상 압축하기가 쉽지는 않습니다. so you can use disableTimeToLive=true to not set a time to live value on the sent message. 그러면 메시지가 수신자 시스템에서 만료되지 않습니다. 자세한 내용은 아래 섹션을 참조하십시오.

false

boolean

forceSendOriginalMessage (producer)

mapJmsMessage=false Camel을 사용하면 경로 중 헤더를 만났을 때 새 JMS 대상에 보낼 새 JMS 메시지가 생성됩니다. 수신한 원래 JMS 메시지를 전송하도록 Camel을 강제 적용하려면 이 옵션을 true로 설정합니다.

false

boolean

includeSentJMSMessageID (producer)

InOnly(예: fire 및 forget)를 사용하여 JMS 대상으로 보낼 때만 적용됩니다. 이 옵션을 사용하면 메시지가 JMS 대상으로 전송될 때 JMS 클라이언트에서 사용하는 실제 JMSMessageID로 Camel Exchange가 강화됩니다.

false

boolean

replyToCacheLevelName (producer)

JMS를 통해 요청/반복을 수행할 때 응답 소비자의 이름으로 캐시 수준을 설정합니다. 이 옵션은 고정 응답 대기열(임시 아님)을 사용하는 경우에만 적용됩니다. Camel은 기본적으로 배타적 또는 공유 w/ replyToSelectorName에 대해 CACHE_CONSUMER를 사용합니다. 그리고 replyToSelectorName 없이 공유의 경우 CACHE_SESSION을 사용합니다. IBM WebSphere와 같은 일부 JMS 브로커는 작동하도록 replyToCacheLevelName=CACHE_NONE을 설정해야 할 수 있습니다. 참고: 임시 대기열을 사용하는 경우 CACHE_NONE이 허용되지 않으며 CACHE_CONSUMER 또는 CACHE_SESSION과 같은 더 높은 값을 사용해야 합니다.

 

문자열

replyToDestinationSelector 이름 (producer)

공유 대기열을 사용할 때(즉, 임시 응답 대기열을 사용하지 않는 경우) 다른 이름에서 자체 응답을 필터링할 수 있도록 사용할 고정 이름을 사용하여 JMS Selector를 설정합니다.

 

문자열

streamMessageTypeEnabled (producer)

StreamMessage 유형이 활성화되어 있는지 여부를 설정합니다. 파일, InputStream 등과 같은 스트리밍 종류의 메시지 페이로드는 BytesMessage 또는 StreamMessage로 전송됩니다. 이 옵션은 사용할 유형을 제어합니다. 기본적으로 BytesMessage는 전체 메시지 페이로드를 메모리로 읽어오도록 적용하는 데 사용됩니다. 이 옵션을 활성화하면 메시지 페이로드가 청크의 메모리에 판독되고 각 청크는 더 이상 데이터가 없을 때까지 StreamMessage에 작성됩니다.

false

boolean

allowSerializedHeaders (advanced)

직렬화된 헤더를 포함할지 여부를 제어합니다. 이TransferExchange()가 true인 경우에만 적용됩니다. 이렇게 하려면 개체가 직렬화 가능 해야 합니다.This requires that the objects are serializable. Camel은 non-serializable 오브젝트를 제외하고 WARN 수준에서 로깅합니다.

false

boolean

asyncStartListener (advanced)

경로를 시작할 때 JmsConsumer 메시지 리스너를 비동기적으로 시작할지 여부입니다. 예를 들어 JmsConsumer가 원격 JMS 브로커에 대한 연결을 가져올 수 없는 경우 재시도 및/또는 페일오버를 시도하는 동안 차단될 수 있습니다. 이로 인해 Camel이 경로를 시작하는 동안 차단됩니다. 이 옵션을 true로 설정하면 JmsConsumer가 비동기 모드에서 전용 스레드를 사용하여 JMS 브로커에 연결하는 동안 시작 경로를 지정할 수 있습니다. 이 옵션을 사용하면 연결을 설정할 수 없는 경우 예외가 WARN 수준에서 기록되고 소비자는 메시지를 수신할 수 없습니다. 그런 다음 다시 시도하도록 경로를 다시 시작할 수 있습니다.

false

boolean

asyncStopListener (advanced)

경로를 중지할 때 JmsConsumer 메시지 리스너를 비동기적으로 중지할지 여부입니다.

false

boolean

destinationResolver (advanced)

고유한 확인자를 사용할 수 있는 플러그형 org.springframework.jms.support.DestinationResolver(예: JNDI 레지스트리에서 실제 대상을 조회하기 위해).

 

DestinationResolver

errorHandler (advanced)

메시지를 처리하는 동안 throw되지 않은 예외의 경우 호출될 org.springframework.util.ErrorHandler를 지정합니다. 기본적으로 이러한 예외는 errorHandler가 구성되지 않은 경우 WARN 수준에서 기록됩니다. 로깅 수준 및 스택 추적을 errorHandlerLoggingLevel 및 errorHandlerLogStackTrace 옵션을 사용하여 기록해야 하는지 여부를 구성할 수 있습니다. 이렇게 하면 사용자 지정 오류 처리기를 코딩하는 것보다 훨씬 쉽게 구성할 수 있습니다.This makes it much easier to configure, than having to code a custom errorHandler.

 

ErrorHandler

exceptionListener (advanced)

기본 JMS 예외에 대해 알림을 받을 JMS Exception Listener를 지정합니다.

 

ExceptionListener

headerFilterStrategy (advanced)

사용자 지정 HeaderFilterStrategy를 사용하여 Camel 메시지와의 헤더를 필터링합니다.

 

HeaderFilterStrategy

idleConsumerLimit (advanced)

언제든지 유휴 상태일 수 있는 소비자 수에 대한 제한을 지정합니다.

1

int

idleTaskExecutionLimit (advanced)

수신 작업의 유휴 실행에 대한 제한을 지정하고 해당 실행 내에 메시지를 받지 못했습니다. 이 제한에 도달하면 작업이 종료되고 다른 실행 작업에 대한 수신을 그대로 둡니다(동적 스케줄링의 경우 maxConcurrentConsumers 설정을 참조). Spring에서 사용할 수 있는 추가 doc가 있습니다.

1

int

includeAllJMSXProperties (advanced)

JMS에서 Camel Message로 매핑할 때 모든 JMSXxxx 속성을 포함할지 여부입니다. 이 값을 true로 설정하면 JMSXAppID 및 JMSXUserID 등과 같은 속성이 포함됩니다. 참고: 사용자 지정 headerFilterStrategy를 사용하는 경우 이 옵션이 적용되지 않습니다.

false

boolean

jmsKeyFormatStrategy (advanced)

JMS 사양을 준수하는 데 사용할 수 있도록 JMS 키를 인코딩 및 디코딩하는 플러그인 전략입니다. Camel은 기본 및 패스스루의 두 가지 구현을 제공합니다. 기본 전략은 점과 하이픈을 안전하게 마샬링합니다(. 및 -). 통과 전략은 다음과 같이 키를 남겨 둡니다. JMS 헤더 키에 불법 문자가 포함되어 있는지 여부를 고려하지 않는 JMS 브로커에 사용할 수 있습니다. org.apache.camel.component.jms.JmsKeyFormatStrategy의 자체 구현을 제공하고 # 표기법을 사용하여 참조할 수 있습니다.

 

문자열

mapJmsMessage (advanced)

Camel이 수신된 JMS 메시지를 javax.jms.TextMessage와 같은 적절한 페이로드 유형에 자동 매핑해야 하는지 여부를 문자열 등에 지정합니다.

true

boolean

maxMessagesPerTask (advanced)

작업당 메시지 수입니다. -1은 무제한입니다. 동시 소비자에 범위(예: max)를 사용하는 경우 이 옵션을 사용하여 더 적은 작업이 필요할 때 소비자의 속도를 축소하는 방법을 제어하기 위해 값을 100으로 설정할 수 있습니다.

-1

int

messageConverter (advanced)

사용자 지정 Spring org.springframework.jms.support.converter.MessageConverter를 사용하려면 javax.jms.Message에 매핑할 수 있는 방법을 제어할 수 있습니다.

 

MessageConverter

messageCreatedStrategy (advanced)

Camel이 JMS 메시지를 보낼 때 Camel이 javax.jms.Message 오브젝트의 새 인스턴스를 생성할 때 호출되는 지정된 MessageCreatedStrategy를 사용합니다.

 

MessageCreatedStrategy

messageIdEnabled (advanced)

전송할 때 메시지 ID를 추가해야 하는지 여부를 지정합니다. 이는 JMS 브로커에 대한 힌트일 뿐입니다. JMS 공급자가 이 힌트를 수락하는 경우 이러한 메시지에는 메시지 ID가 null로 설정되어야 합니다. 공급자가 힌트를 무시하면 메시지 ID를 정상적인 고유 값으로 설정해야 합니다.

true

boolean

messageListenerContainer Factory (advanced)

메시지를 사용하는 데 사용할 org.springframework.jms.listener.AbstractMessageListenerContainer를 결정하는 데 사용되는 MessageListenerContainer의 레지스트리 ID입니다. 이를 설정하면 consumerType이 Custom으로 자동 설정됩니다.

 

MessageListener ContainerFactory

messageTimestampEnabled (advanced)

메시지 전송 시 기본적으로 타임스탬프를 활성화할지 여부를 지정합니다. 이는 JMS 브로커에 대한 힌트일 뿐입니다. JMS 공급자가 이 힌트를 수락하는 경우 이러한 메시지에는 타임스탬프가 0으로 설정되어야 합니다. 공급자가 힌트를 무시하면 타임스탬프를 정상적인 값으로 설정해야 합니다.

true

boolean

pubSubNoLocal (advanced)

자체 연결에서 게시한 메시지 배달을 금지할지 여부를 지정합니다.Specifies whether to inhibit the delivery of messages published by its own connection.

false

boolean

receiveTimeout (advanced)

메시지 수신 시간(밀리초)입니다.

1000

long

복구Interval (advanced)

연결이 새로 고쳐질 때(즉, 밀리초) 복구 시도 사이의 간격을 지정합니다. 기본값은 5000ms, 즉 5초입니다.

5000

long

requestTimeoutChecker Interval (advanced)

Camel이 JMS를 통해 요청/반복 시 Exchange 시간 초과를 확인하는 빈도를 설정합니다. 기본적으로 Camel은 초당 한 번 확인합니다. 그러나 시간 초과가 발생할 때 더 빠르게 대응해야 하는 경우 이 간격을 낮추어 더 자주 확인할 수 있습니다. 시간 제한은 옵션 requestTimeout에 따라 결정됩니다.

1000

long

synchronous (advanced)

동기 처리를 엄격하게 사용해야 하는지 또는 Camel이 비동기 처리를 사용할 수 있는지 여부를 설정합니다(지원되는 경우).

false

boolean

transferException (advanced)

활성화되고 소비자 측면에서 Request Reply messaging(InOut)을 사용하고 Exchange 실패를 사용하는 경우 원인 Exception이 다시 javax.jms.ObjectMessage로 응답으로 다시 전송됩니다. 클라이언트가 Camel인 경우 반환된 Exception은 rethrown입니다. 이를 통해 라우팅에서 Camel JMS를 브리지로 사용할 수 있습니다. 예를 들어 영구 대기열을 사용하여 강력한 라우팅을 활성화할 수 있습니다. 또한 transferExchange를 사용하도록 설정한 경우 이 옵션이 우선합니다. catch 예외는 직렬화 가능 해야 합니다.The caught exception is required to be serializable. 소비자 측의 원래 예외는 생산자로 반환될 때 org.apache.camel.RuntimeCamelException과 같은 외부 예외로 래핑될 수 있습니다.

false

boolean

transferExchange (advanced)

당신은 단지 바디와 헤더 대신 전선을 통해 교환을 전송할 수 있습니다. 다음 필드가 전송됩니다. 본문, 외부 본문, Fault 본문, 헤더, 외부 헤더, Fault 헤더, 교환 속성, 교환 예외. 이렇게 하려면 개체가 직렬화 가능 해야 합니다.This requires that the objects are serializable. Camel은 non-serializable 오브젝트를 제외하고 WARN 수준에서 로깅합니다. 제작자와 소비자 측에서 이 옵션을 모두 활성화해야 하므로 Camel은 페이로드가 Exchange이고 일반 페이로드가 아닌 Exchange임을 알고 있습니다.

false

boolean

transferFault (advanced)

활성 상태에서 Request Reply messaging(InOut)을 사용하고 Exchange가 소비자 측에서 SOAP 오류( exception)와 함께 실패한 경우, org.apache.camel.Message#isFault()의 오류 플래그는 JmsConstants#JMS_JMS_TRANSFER_FAT를 사용하여 JMS 헤더로 다시 보냅니다. 클라이언트가 Camel인 경우 반환된 fault 플래그가 org.apache.camel.Message#setFault(boolean)에 설정됩니다. Cxf 또는 Spring-ws와 같은 SOAP과 같은 결함을 지원하는 Camel 구성 요소를 사용할 때 이를 활성화할 수 있습니다.

false

boolean

useMessageIDAsCorrelation ID (advanced)

JMSMessageID를 항상 InOut 메시지의 JMSCorrelationID로 사용할지 여부를 지정합니다.

false

boolean

waitForProvisionCorrelation ToBeUpdatedCounter (advanced)

JMS를 통해 요청/응답할 때 및 useMessageIDAsCorrelationID 옵션이 활성화된 경우 provisional correlation id가 실제 상관 관계 ID로 업데이트될 때까지 대기하는 횟수입니다.

50

int

waitForProvisionCorrelation ToBeUpdatedThreadSleeping Time (advanced)

프로비저닝 상관 ID가 업데이트될 때까지 기다리는 동안 밀리코어가 잠기지 않는 간격입니다.

100

long

errorHandlerLoggingLevel (logging)

은 로깅되지 않은 예외에 대해 기본 errorHandler 로깅 수준을 구성할 수 있습니다.

WARN

LoggingLevel

errorHandlerLogStackTrace (logging)

기본 errorHandler로 stacktrace를 기록해야 하는지 여부를 제어할 수 있습니다.

true

boolean

암호 (보안)

ConnectionFactory에 사용할 암호입니다. ConnectionFactory에서 사용자 이름/암호를 직접 구성할 수도 있습니다.

 

문자열

사용자 이름 (보안)

ConnectionFactory와 함께 사용할 사용자 이름입니다. ConnectionFactory에서 사용자 이름/암호를 직접 구성할 수도 있습니다.

 

문자열

트랜잭션(Transaction acted )

transacted 모드를 사용할지 여부를 지정합니다.

false

boolean

lazyCreateTransaction Manager (transaction)

true인 경우 Camel은 옵션을 transacted=true할 때 삽입된 transactionManager가 없는 경우 JmsTransactionManager를 생성합니다.

true

boolean

TransactionManager (transaction)

사용할 Spring 트랜잭션 관리자입니다.

 

PlatformTransaction Manager

transactionName (transaction)

사용할 트랜잭션의 이름입니다.

 

문자열

TransactionTimeout (transaction)

트랜잭션 모드를 사용하는 경우 트랜잭션의 시간 초과 값(초 단위)입니다.

-1

int