JMS

JMS

Scheme: jms

A JMS Endpoint

Name Kind Type Required Deprecated Default Value Enum Values Description
destinationType path java.lang.String false queue
topic
temp:queue
temp:topic
The kind of destination to use @param destinationType
destinationName path java.lang.String true false Name of the queue or topic to use as destination
headerFilterStrategy parameter org.apache.camel.spi.HeaderFilterStrategy false
selector parameter java.lang.String false Sets the JMS selector to use
acknowledgementModeName parameter java.lang.String false
exceptionListener parameter javax.jms.ExceptionListener false
consumerType parameter org.apache.camel.component.jms.ConsumerType false Default Simple
Default
Custom
errorHandler parameter org.springframework.util.ErrorHandler false
errorHandlerLoggingLevel parameter org.apache.camel.LoggingLevel false WARN DEBUG
ERROR
INFO
TRACE
WARN
OFF
errorHandlerLogStackTrace parameter boolean false true
autoStartup parameter boolean false true
acceptMessagesWhileStopping parameter boolean false
clientId parameter java.lang.String false
durableSubscriptionName parameter java.lang.String false
exposeListenerSession parameter boolean false
pubSubNoLocal parameter boolean false
concurrentConsumers parameter int false 1
maxMessagesPerTask parameter int false -1
cacheLevelName parameter java.lang.String false
recoveryInterval parameter long false 5000
receiveTimeout parameter long false 1000
requestTimeout parameter long false 20000 Sets the timeout in milliseconds which requests should timeout after
requestTimeoutCheckerInterval parameter long false 1000 Sets the interval in milliseconds how often the request timeout checker should run.
idleTaskExecutionLimit parameter int false 1
idleConsumerLimit parameter int false 1
maxConcurrentConsumers parameter int false
explicitQosEnabled parameter java.lang.Boolean false
deliveryPersistent parameter boolean false true
deliveryMode parameter java.lang.Integer false
replyToDeliveryPersistent parameter boolean false true
timeToLive parameter long false -1
mapJmsMessage parameter boolean false true
messageIdEnabled parameter boolean false true
messageTimestampEnabled parameter boolean false true
priority parameter int false -1
transacted parameter boolean false
lazyCreateTransactionManager parameter boolean false true
transactionName parameter java.lang.String false
transactionTimeout parameter int false -1
preserveMessageQos parameter boolean false Set to true if you want to send message using the QoS settings specified on the message. Normally the QoS settings used are the one configured on this Object.
disableReplyTo parameter boolean false Disables the use of the JMSReplyTo header for consumers so that inbound messages are treated as InOnly rather than InOut requests. @param disableReplyTo whether or not to disable the use of JMSReplyTo header indicating an InOut
eagerLoadingOfProperties parameter boolean false Enables eager loading of JMS properties as soon as a message is loaded which generally is inefficient as the JMS properties may not be required but sometimes can catch early any issues with the underlying JMS provider and the use of JMS properties @param eagerLoadingOfProperties whether or not to enable eager loading of JMS properties on inbound messages
alwaysCopyMessage parameter boolean false
useMessageIDAsCorrelationID parameter boolean false
replyToDestination parameter java.lang.String false
replyToDestinationSelectorName parameter java.lang.String false
replyToOverride parameter java.lang.String false
jmsMessageType parameter org.apache.camel.component.jms.JmsMessageType false Bytes
Map
Object
Stream
Text
Blob
jmsKeyFormatStrategy parameter org.apache.camel.component.jms.JmsKeyFormatStrategy false
transferExchange parameter boolean false
transferException parameter boolean false
testConnectionOnStartup parameter boolean false
asyncStartListener parameter boolean false
asyncStopListener parameter boolean false
forceSendOriginalMessage parameter boolean false
disableTimeToLive parameter boolean false
replyToType parameter org.apache.camel.component.jms.ReplyToType false Temporary
Shared
Exclusive
Gets the reply to type.

Will only return a value if this option has been explicit configured. @return the reply type if configured, otherwise null

asyncConsumer parameter boolean false Sets whether asynchronous routing is enabled on {@link JmsConsumer}.

By default this is false. If configured as true then the {@link JmsConsumer} will process the {@link org.apache.camel.Exchange} asynchronous.

replyToCacheLevelName parameter java.lang.String false
allowNullBody parameter boolean false true Whether to allow sending with no doy (eg as null)
includeSentJMSMessageID parameter boolean false Whether to include the actual JMSMessageID set on the Message by the JMS vendor on the Camel Message as a header when sending InOnly messages.

Can be enable to gather the actual JMSMessageID for InOnly messages, which allows to access the message id, which can be used for logging and tracing purposes.

This option is default false.

includeAllJMSXProperties parameter boolean false Whether to include all JMSX properties as Camel headers when binding from JMS to Camel Message.

By default a number of properties is excluded accordingly to the table of JMS properties in the JMS 1.1 spec, on page 39.

exchangePattern parameter org.apache.camel.ExchangePattern false InOnly InOnly
RobustInOnly
InOut
InOptionalOut
OutOnly
RobustOutOnly
OutIn
OutOptionalIn
Sets the default exchange pattern when creating an exchange
synchronous parameter boolean false false Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).

jms consumer

A {@link org.apache.camel.Consumer} which uses Spring's {@link AbstractMessageListenerContainer} implementations to consume JMS messages. @see DefaultJmsMessageListenerContainer @see SimpleJmsMessageListenerContainer