Skip to content

JMS

Forage creates pooled JMS connection factories with optional XA transaction support.

Quick Start

forage.myBroker.jms.kind=artemis
forage.myBroker.jms.url=tcp://localhost:61616
forage.myBroker.jms.username=admin
forage.myBroker.jms.password=secret
- to:
    uri: jms:queue:orders
    parameters:
      connectionFactory: "#myBroker"

Supported Brokers

Name Description
artemis ActiveMQ Artemis message broker
ibmmq IBM MQ message broker

Properties

Property Description Type Default Required
forage.jms.kind The JMS broker kind/type bean-name Yes
forage.jms.broker.url The JMS broker URL string Yes
forage.jms.client.id The JMS client identifier string
forage.jms.transaction.enabled Enable transaction management boolean false

Security

Property Description Type Default Required
forage.jms.username The JMS broker username string
forage.jms.password The JMS broker password password

Advanced

Property Description Type Default Required
forage.jms.pool.enabled Enable connection pooling boolean true
forage.jms.pool.max.connections Maximum number of connections in the pool integer 10
forage.jms.pool.max.sessions.per.connection Maximum number of sessions per connection integer 500
forage.jms.pool.idle.timeout.millis Idle timeout for connections (milliseconds) long 30000
forage.jms.pool.expiry.timeout.millis Expiry timeout for connections (milliseconds) long 0
forage.jms.pool.connection.timeout.millis Connection timeout (milliseconds) long 30000
forage.jms.pool.block.if.full Block when pool is full boolean true
forage.jms.pool.block.if.full.timeout.millis Timeout when blocking on full pool (milliseconds, -1 for infinite) long -1
forage.jms.transaction.timeout.seconds Timeout for transactions (seconds) integer 30
forage.jms.transaction.node.id The transaction node identifier string
forage.jms.transaction.object.store.id The transaction object store identifier string
forage.jms.transaction.enable.recovery Enable transaction recovery boolean false
forage.jms.transaction.recovery.modules Comma-separated list of transaction recovery modules string
forage.jms.transaction.expiry.scanners Comma-separated list of transaction expiry scanners string com.arjuna.ats.internal.arjuna.recovery.ExpiredTransactionStatusManagerScanner
forage.jms.transaction.xa.resource.orphan.filters Comma-separated list of XA resource orphan filters string
forage.jms.transaction.object.store.directory Directory for transaction object store string ObjectStore
forage.jms.transaction.object.store.type Type of transaction object store (file-system or jdbc) string file-system

Multiple Brokers

forage.primaryBroker.jms.kind=artemis
forage.primaryBroker.jms.url=tcp://broker1:61616

forage.backupBroker.jms.kind=artemis
forage.backupBroker.jms.url=tcp://broker2:61617