XBean XML Reference 5.0
Using ActiveMQ Classic > Xml Reference > XBean XML Reference 5.0
Elements By Type
The org.apache.activemq.broker.TransportConnector Type Implementations
<transportConnector>
The org.apache.activemq.network.jms.InboundQueueBridge Type Implementations
<inboundQueueBridge>
Create an Inbound Queue Bridge
The org.apache.activemq.network.NetworkConnector Type Implementations
<ldapNetworkConnector>
class to create dynamic network connectors listed in an directory server using the LDAP v3 protocol as defined in RFC 2251, the entries listed in the directory server must implement the ipHost and ipService objectClasses as defined in RFC 2307.
<multicastNetworkConnector>
A network connector which uses some kind of multicast-like transport that communicates with potentially many remote brokers over a single logical {@link Transport} instance such as when using multicast. This implementation does not depend on multicast at all; any other group based transport could be used.
<networkConnector>
A network connector which uses a discovery agent to detect the remote brokers available and setup a connection to each available remote broker
The org.apache.activemq.broker.BrokerService Type Implementations
<broker>
An ActiveMQ Classic Message Broker. It consists of a number of transport connectors, network connectors and a bunch of properties which can be used to configure the broker as its lazily created.
The org.apache.activemq.usage.TempUsage Type Implementations
<tempUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
The org.apache.activemq.broker.region.policy.PendingSubscriberMessageStoragePolicy Type Implementations
<fileCursor>
Pending messages
<vmCursor>
Pending messages held
The org.apache.activemq.usage.MemoryUsage Type Implementations
<memoryUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
The org.apache.activemq.broker.BrokerPlugin Type Implementations
<authorizationPlugin>
An authorization plugin where each operation on a destination is checked against an authorizationMap
<connectionDotFilePlugin>
A DOT file creator plugin which creates a DOT file showing the current connections
<destinationDotFilePlugin>
A DOT file creator plugin which creates a DOT file showing the current topic & queue hierarchies.
<jaasAuthenticationPlugin>
Provides a JAAS based authentication plugin
<jaasCertificateAuthenticationPlugin>
Provides a JAAS based SSL certificate authentication plugin
<loggingBrokerPlugin>
A simple Broker interceptor which allows you to enable/disable logging.
<multicastTraceBrokerPlugin>
A Broker interceptor which allows you to trace all operations to a Multicast socket.
<simpleAuthenticationPlugin>
Provides a simple authentication plugin
<timeStampingBrokerPlugin>
A Broker interceptor which updates a JMS Client’s timestamp on the message with a broker timestamp. Useful when the clocks on client machines are known to not be correct and you can only trust the time set on the broker machines. Enabling this plugin will break JMS compliance since the timestamp that the producer sees on the messages after as send() will be different from the timestamp the consumer will observe when he receives the message. This plugin is not enabled in the default ActiveMQ Classic configuration.
<udpTraceBrokerPlugin>
A Broker interceptor which allows you to trace all operations to a UDP socket.
The org.apache.activemq.store.jdbc.JDBCAdapter Type Implementations
<axionJDBCAdapter>
Axion specific Adapter. Axion does not seem to support ALTER statements or sub-selects. This means: - We cannot auto upgrade the schema was we roll out new versions of ActiveMQ Classic - We cannot delete durable sub messages that have be acknowledged by all consumers.
<blobJDBCAdapter>
This JDBCAdapter inserts and extracts BLOB data using the getBlob()/setBlob() operations. This is a little more involved since to insert a blob you have to: 1: insert empty blob. 2: select the blob 3: finally update the blob with data value. The databases/JDBC drivers that use this adapter are:
<bytesJDBCAdapter>
This JDBCAdapter inserts and extracts BLOB data using the setBytes()/getBytes() operations. The databases/JDBC drivers that use this adapter are:
<db2JDBCAdapter>
<defaultJDBCAdapter>
Implements all the default JDBC operations that are used by the JDBCPersistenceAdapter.
sub-classing is encouraged to override the default implementation of methods to account for differences in JDBC Driver implementations.
The JDBCAdapter inserts and extracts BLOB data using the getBytes()/setBytes() operations.
The databases/JDBC drivers that use this adapter are:
<imageBasedJDBCAdaptor>
Provides JDBCAdapter since that uses IMAGE datatype to hold binary data. The databases/JDBC drivers that use this adapter are:
- Sybase
- MS SQL
<informixJDBCAdapter>
JDBC Adapter for Informix database. Because Informix database restricts length of composite primary keys, length of container name field and subscription id field must be reduced to 150 characters. Therefore be sure not to use longer names for container name and subscription id than 150 characters.
<oracleJDBCAdapter>
Implements all the default JDBC operations that are used by the JDBCPersistenceAdapter.
Subclassing is encouraged to override the default implementation of methods to account for differences in JDBC Driver implementations.
The JDBCAdapter inserts and extracts BLOB data using the getBytes()/setBytes() operations.
The databases/JDBC drivers that use this adapter are:
<streamJDBCAdapter>
This JDBCAdapter inserts and extracts BLOB data using the setBinaryStream()/getBinaryStream() operations. The databases/JDBC drivers that use this adapter are:
- Axion
The org.apache.activemq.broker.region.policy.PendingQueueMessageStoragePolicy Type Implementations
<fileQueueCursor>
Pending
<storeCursor>
Pending messages
<vmQueueCursor>
Pending messages
The javax.jms.TopicConnectionFactory Type Implementations
<connectionFactory>
A Spring enhanced connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
<xaConnectionFactory>
A Spring enhanced XA connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
The org.apache.activemq.broker.region.virtual.VirtualDestination Type Implementations
<compositeQueue>
Represents a virtual queue which forwards to a number of other destinations.
<compositeTopic>
Represents a virtual topic which forwards to a number of other destinations.
<virtualTopic>
Creates Virtual Topics using a prefix and postfix. The virtual destination creates a wildcard that is then used to look up all active queue subscriptions which match.
The org.apache.activemq.broker.region.policy.PolicyMap Type Implementations
<policyMap>
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies.
The org.apache.activemq.usage.UsageCapacity Type Implementations
<defaultUsageCapacity>
Identify if a limit has been reached
<usageCapacity>
Identify if a limit has been reached
The org.apache.activemq.broker.region.policy.PendingMessageLimitStrategy Type Implementations
<constantPendingMessageLimitStrategy>
This PendingMessageLimitStrategy is configured to a constant value for all subscriptions.
<prefetchRatePendingMessageLimitStrategy>
This PendingMessageLimitStrategy sets the maximum pending message limit value to be a multiplier of the prefetch limit of the subscription.
The org.apache.activemq.usage.SystemUsage Type Implementations
<systemUsage>
Holder for Usage instances for memory, store and temp files Main use case is manage memory usage.
The javax.jms.Destination Type Implementations
<queue>
An ActiveMQ Classic Queue
<topic>
An ActiveMQ Classic Topic
The org.apache.activemq.broker.region.policy.SubscriptionRecoveryPolicy Type Implementations
<fixedCountSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed count of last messages.
<fixedSizedSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed amount of memory available in RAM for message history which is evicted in time order.
<lastImageSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will only keep the last message.
<noSubscriptionRecoveryPolicy>
This SubscriptionRecoveryPolicy disable recovery of messages.
<queryBasedSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will perform a user specific query mechanism to load any messages they may have missed.
<timedSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will keep a timed buffer of messages around in memory and use that to recover new subscriptions.
The javax.jms.QueueConnectionFactory Type Implementations
<connectionFactory>
A Spring enhanced connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
<xaConnectionFactory>
A Spring enhanced XA connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
The org.apache.activemq.broker.jmx.ManagementContext Type Implementations
<managementContext>
A Flow provides different dispatch policies within the NMR
The org.apache.activemq.store.jdbc.Statements Type Implementations
<statements>
The org.apache.activemq.store.PersistenceAdapterFactory Type Implementations
<amqPersistenceAdapterFactory>
An implementation of {@link PersistenceAdapterFactory}
<journaledJDBC>
Creates a default persistence model using the Journal and JDBC
The org.apache.activemq.security.AuthorizationEntry Type Implementations
<authorizationEntry>
Represents an entry in a {@link DefaultAuthorizationMap} for assigning different operations (read, write, admin) of user roles to a specific destination or a hierarchical wildcard area of destinations.
<tempDestinationAuthorizationEntry>
Represents an entry in a {@link DefaultAuthorizationMap} for assigning different operations (read, write, admin) of user roles to a temporary destination
The org.apache.activemq.broker.region.policy.PendingDurableSubscriberMessageStoragePolicy Type Implementations
<fileDurableSubscriberCursor>
Pending messages for durable subscribers
<storeDurableSubscriberCursor>
Pending messages for a durable
<vmDurableCursor>
Pending
The org.apache.activemq.broker.region.group.MessageGroupMapFactory Type Implementations
<messageGroupHashBucketFactory>
A factory to create instances of {@link SimpleMessageGroupMap} when implementing the Message Groups functionality.
<simpleMessageGroupMapFactory>
A factory to create instances of {@link SimpleMessageGroupMap} when implementing the Message Groups functionality.
The org.apache.activemq.usage.StoreUsage Type Implementations
<storeUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
The org.apache.activemq.broker.region.policy.DeadLetterStrategy Type Implementations
<individualDeadLetterStrategy>
A {@link DeadLetterStrategy} where each destination has its own individual DLQ using the subject naming hierarchy.
<sharedDeadLetterStrategy>
A default implementation of {@link DeadLetterStrategy} which uses a constant destination.
The javax.jms.Topic Type Implementations
<topic>
An ActiveMQ Classic Topic
The org.apache.activemq.ActiveMQPrefetchPolicy Type Implementations
<prefetchPolicy>
Defines the prefetch message policies for different types of consumers
The org.apache.activemq.broker.Broker Type Implementations
<loggingBrokerPlugin>
A simple Broker interceptor which allows you to enable/disable logging.
<multicastTraceBrokerPlugin>
A Broker interceptor which allows you to trace all operations to a Multicast socket.
<timeStampingBrokerPlugin>
A Broker interceptor which updates a JMS Client’s timestamp on the message with a broker timestamp. Useful when the clocks on client machines are known to not be correct and you can only trust the time set on the broker machines. Enabling this plugin will break JMS compliance since the timestamp that the producer sees on the messages after as send() will be different from the timestamp the consumer will observe when he receives the message. This plugin is not enabled in the default ActiveMQ Classic configuration.
<udpTraceBrokerPlugin>
A Broker interceptor which allows you to trace all operations to a UDP socket.
The org.apache.activemq.store.PersistenceAdapter Type Implementations
<amqPersistenceAdapter>
An implementation of {@link PersistenceAdapter} designed for use with a {@link Journal} and then check pointing asynchronously on a timeout with some other long term persistent storage.
<jdbcPersistenceAdapter>
A {@link PersistenceAdapter} implementation using JDBC for persistence storage. This persistence adapter will correctly remember prepared XA transactions, but it will not keep track of local transaction commits so that operations performed against the Message store are done as a single uow.
<journalPersistenceAdapter>
An implementation of {@link PersistenceAdapter} designed for use with a {@link Journal} and then check pointing asynchronously on a timeout with some other long term persistent storage.
<kahaPersistenceAdapter>
<memoryPersistenceAdapter>
The org.apache.activemq.broker.region.policy.PolicyEntry Type Implementations
<policyEntry>
Represents an entry in a {@link PolicyMap} for assigning policies to a specific destination or a hierarchical wildcard area of destinations.
The org.apache.activemq.network.DemandForwardingBridgeSupport Type Implementations
<compositeDemandForwardingBridge>
A demand forwarding bridge which works with multicast style transports where a single Transport could be communicating with multiple remote brokers
<demandForwardingBridge>
Forwards messages from the local broker to the remote broker based on demand.
The org.apache.activemq.network.jms.OutboundQueueBridge Type Implementations
<outboundQueueBridge>
Create an Outbound Queue Bridge
The org.apache.activemq.store.jdbc.JDBCPersistenceAdapter Type Implementations
<jdbcPersistenceAdapter>
A {@link PersistenceAdapter} implementation using JDBC for persistence storage. This persistence adapter will correctly remember prepared XA transactions, but it will not keep track of local transaction commits so that operations performed against the Message store are done as a single uow.
The org.apache.activemq.command.ActiveMQDestination Type Implementations
<queue>
An ActiveMQ Classic Queue
<topic>
An ActiveMQ Classic Topic
The org.apache.activemq.network.jms.InboundTopicBridge Type Implementations
<inboundTopicBridge>
Create an Inbound Topic Bridge
The org.apache.activemq.network.jms.JmsConnector Type Implementations
<jmsQueueConnector>
A Bridge to other JMS Queue providers
<jmsTopicConnector>
A Bridge to other JMS Topic providers
The org.apache.activemq.RedeliveryPolicy Type Implementations
<redeliveryPolicy>
Configuration options used to control how messages are re-delivered when they are rolled back.
The org.apache.activemq.security.AuthorizationMap Type Implementations
<authorizationMap>
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies. Each entry in the map represents the authorization ACLs for each operation.
<lDAPAuthorizationMap>
An {@link AuthorizationMap} which uses LDAP
<simpleAuthorizationMap>
An AuthorizationMap which is configured with individual DestinationMaps for each operation.
The org.apache.activemq.security.TempDestinationAuthorizationEntry Type Implementations
<tempDestinationAuthorizationEntry>
Represents an entry in a {@link DefaultAuthorizationMap} for assigning different operations (read, write, admin) of user roles to a temporary destination
The org.apache.activemq.broker.region.policy.DispatchPolicy Type Implementations
<roundRobinDispatchPolicy>
Simple dispatch policy that sends a message to every subscription that matches the message.
<simpleDispatchPolicy>
Simple dispatch policy that sends a message to every subscription that matches the message.
<strictOrderDispatchPolicy>
Dispatch policy that causes every subscription to see messages in the same order.
The javax.jms.ConnectionFactory Type Implementations
<connectionFactory>
A Spring enhanced connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
<xaConnectionFactory>
A Spring enhanced XA connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
The javax.jms.Queue Type Implementations
<queue>
An ActiveMQ Classic Queue
The org.apache.activemq.broker.region.policy.MessageEvictionStrategy Type Implementations
<oldestMessageEvictionStrategy>
An eviction strategy which evicts the oldest message first (which is the default).
<oldestMessageWithLowestPriorityEvictionStrategy>
An eviction strategy which evicts the oldest message with the lowest priority first.
The org.apache.activemq.Service Type Implementations
<broker>
An ActiveMQ Classic Message Broker. It consists of a number of transport connectors, network connectors and a bunch of properties which can be used to configure the broker as its lazily created.
<commandAgent>
An agent which listens to commands on a JMS destination
<forwardingBridge>
Forwards all messages from the local broker to the remote broker.
<inboundQueueBridge>
Create an Inbound Queue Bridge
<inboundTopicBridge>
Create an Inbound Topic Bridge
<jmsQueueConnector>
A Bridge to other JMS Queue providers
<jmsTopicConnector>
A Bridge to other JMS Topic providers
<ldapNetworkConnector>
class to create dynamic network connectors listed in an directory server using the LDAP v3 protocol as defined in RFC 2251, the entries listed in the directory server must implement the ipHost and ipService objectClasses as defined in RFC 2307.
<managementContext>
A Flow provides different dispatch policies within the NMR
<masterConnector>
Connects a Slave Broker to a Master when using Master Slave for High Availability of messages.
<memoryUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
<multicastNetworkConnector>
A network connector which uses some kind of multicast-like transport that communicates with potentially many remote brokers over a single logical {@link Transport} instance such as when using multicast. This implementation does not depend on multicast at all; any other group based transport could be used.
<networkConnector>
A network connector which uses a discovery agent to detect the remote brokers available and setup a connection to each available remote broker
<outboundQueueBridge>
Create an Outbound Queue Bridge
<outboundTopicBridge>
Create an Outbound Topic Bridge
<proxyConnector>
<storeUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
<systemUsage>
Holder for Usage instances for memory, store and temp files Main use case is manage memory usage.
<tempUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
The org.apache.activemq.network.jms.JmsMesageConvertor Type Implementations
<simpleJmsMessageConvertor>
Converts Message from one JMS to another
The org.apache.activemq.network.jms.OutboundTopicBridge Type Implementations
<outboundTopicBridge>
Create an Outbound Topic Bridge
The org.apache.activemq.broker.region.DestinationInterceptor Type Implementations
<mirroredQueue>
Creates Mirrored Queue using a prefix and postfix to define the topic name on which to mirror the queue to.
<virtualDestinationInterceptor>
Implements Virtual Topics.
The org.apache.activemq.filter.DestinationMap Type Implementations
<authorizationMap>
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies. Each entry in the map represents the authorization ACLs for each operation.
<policyMap>
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies.
The org.apache.activemq.network.NetworkBridgeConfiguration Type Implementations
<ldapNetworkConnector>
class to create dynamic network connectors listed in an directory server using the LDAP v3 protocol as defined in RFC 2251, the entries listed in the directory server must implement the ipHost and ipService objectClasses as defined in RFC 2307.
<multicastNetworkConnector>
A network connector which uses some kind of multicast-like transport that communicates with potentially many remote brokers over a single logical {@link Transport} instance such as when using multicast. This implementation does not depend on multicast at all; any other group based transport could be used.
<networkConnector>
A network connector which uses a discovery agent to detect the remote brokers available and setup a connection to each available remote broker
The <amqPersistenceAdapter> Element
An implementation of {@link PersistenceAdapter} designed for use with a {@link Journal} and then check pointing asynchronously on a timeout with some other long term persistent storage.
Properties
Property Name
Type
Description
archiveDataLogs
boolean
asyncDataManager
org.apache.activemq.kaha.impl.async.AsyncDataManager
brokerName
java.lang.String
brokerService
org.apache.activemq.broker.BrokerService
checkpointInterval
long
cleanupInterval
long
directory
java.io.File
directoryArchive
java.io.File
indexBinSize
int
indexKeySize
int
indexPageSize
int
When set using XBean, you can use values such as: “20 mb”, “1024 kb”, or “1 gb”
maxCheckpointMessageAddSize
int
When set using XBean, you can use values such as: “20 mb”, “1024 kb”, or “1 gb”
maxFileLength
int
When set using XBean, you can use values such as: “20 mb”, “1024 kb”, or “1 gb”
persistentIndex
boolean
referenceStoreAdapter
org.apache.activemq.store.ReferenceStoreAdapter
syncOnWrite
boolean
taskRunnerFactory
org.apache.activemq.thread.TaskRunnerFactory
usageManager
org.apache.activemq.usage.SystemUsage
useNio
boolean
wireFormat
org.apache.activemq.wireformat.WireFormat
The <amqPersistenceAdapterFactory> Element
An implementation of {@link PersistenceAdapterFactory}
Properties
Property Name
Type
Description
brokerName
java.lang.String
dataDirectory
java.io.File
journalThreadPriority
int
maxFileLength
int
persistentIndex
boolean
referenceStoreAdapter
org.apache.activemq.store.ReferenceStoreAdapter
syncOnWrite
boolean
taskRunnerFactory
org.apache.activemq.thread.TaskRunnerFactory
useNio
boolean
The <authenticationUser> Element
A helper object used to configure simple authentiaction plugin
Properties
Property Name
Type
Description
groups
java.lang.String
password
java.lang.String
username
java.lang.String
The <authorizationEntry> Element
Represents an entry in a {@link DefaultAuthorizationMap} for assigning different operations (read, write, admin) of user roles to a specific destination or a hierarchical wildcard area of destinations.
Properties
Property Name
Type
Description
admin
java.lang.String
adminACLs
(java.lang.Object)*
destination
org.apache.activemq.command.ActiveMQDestination
groupClass
java.lang.String
queue
java.lang.String
A helper method to set the destination from a configuration file
read
java.lang.String
readACLs
(java.lang.Object)*
topic
java.lang.String
A helper method to set the destination from a configuration file
write
java.lang.String
writeACLs
(java.lang.Object)*
The <authorizationMap> Element
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies. Each entry in the map represents the authorization ACLs for each operation.
Properties
Property Name
Type
Description
authorizationEntries
(java.lang.Object)*
Sets the individual entries on the authorization map
defaultEntry
org.apache.activemq.security.AuthorizationEntry
entries
(java.lang.Object)*
A helper method to allow the destination map to be populated from a dependency injection framework such as Spring
tempDestinationAuthorizationEntry
org.apache.activemq.security.TempDestinationAuthorizationEntry
The <authorizationPlugin> Element
An authorization plugin where each operation on a destination is checked against an authorizationMap
Properties
Property Name
Type
Description
map
org.apache.activemq.security.AuthorizationMap
The <axionJDBCAdapter> Element
Axion specific Adapter. Axion does not seem to support ALTER statements or sub-selects. This means: - We cannot auto upgrade the schema was we roll out new versions of ActiveMQ Classic - We cannot delete durable sub messages that have be acknowledged by all consumers.
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <blobJDBCAdapter> Element
This JDBCAdapter inserts and extracts BLOB data using the getBlob()/setBlob() operations. This is a little more involved since to insert a blob you have to: 1: insert empty blob. 2: select the blob 3: finally update the blob with data value. The databases/JDBC drivers that use this adapter are:
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <broker> Element
An ActiveMQ Classic Message Broker. It consists of a number of transport connectors, network connectors and a bunch of properties which can be used to configure the broker as its lazily created.
Properties
Property Name
Type
Description
adminView
org.apache.activemq.broker.jmx.BrokerView
Returns the administration view of the broker; used to create and destroy resources such as queues and topics. Note this method returns null if JMX is disabled.
advisorySupport
boolean
Allows the support of advisory messages to be disabled for performance reasons.
brokerName
java.lang.String
Sets the name of this broker; which must be unique in the network
brokerObjectName
javax.management.ObjectName
Sets the JMX ObjectName for this broker
clustered
boolean
consumerSystemUsage
org.apache.activemq.usage.SystemUsage
dataDirectory
java.lang.String
Sets the directory in which the data files will be stored by default for the JDBC and Journal persistence adaptors.
dataDirectoryFile
java.io.File
Sets the directory in which the data files will be stored by default for the JDBC and Journal persistence adaptors.
deleteAllMessagesOnStartup
boolean
Sets whether or not all messages are deleted on startup - mostly only useful for testing.
destinationFactory
org.apache.activemq.broker.region.DestinationFactory
destinationInterceptors
(org.apache.activemq.broker.region.DestinationInterceptor)*
Sets the destination interceptors to use
destinationPolicy
org.apache.activemq.broker.region.policy.PolicyMap
Sets the destination specific policies available either for exact destinations or for wildcard areas of destinations.
destinations
(org.apache.activemq.command.ActiveMQDestination)*
Sets the destinations which should be loaded/created on startup
enableStatistics
boolean
Sets whether or not the Broker’s services enable statistics or not.
jmsBridgeConnectors
(org.apache.activemq.network.jms.JmsConnector)*
keepDurableSubsActive
boolean
managementContext
org.apache.activemq.broker.jmx.ManagementContext
masterConnectorURI
java.lang.String
messageAuthorizationPolicy
org.apache.activemq.security.MessageAuthorizationPolicy
Sets the policy used to decide if the current connection is authorized to consume a given message
networkConnectorURIs
(java.lang.String)*
networkConnectors
(org.apache.activemq.network.NetworkConnector)*
Sets the network connectors which this broker will use to connect to other brokers in a federated network
persistenceAdapter
org.apache.activemq.store.PersistenceAdapter
Sets the persistence adaptor implementation to use for this broker
persistenceFactory
org.apache.activemq.store.PersistenceAdapterFactory
persistenceTaskRunnerFactory
org.apache.activemq.thread.TaskRunnerFactory
persistenceThreadPriority
int
persistent
boolean
Sets whether or not persistence is enabled or disabled.
plugins
(org.apache.activemq.broker.BrokerPlugin)*
Sets a number of broker plugins to install such as for security authentication or authorization
populateJMSXUserID
boolean
Sets whether or not the broker should populate the JMSXUserID header.
producerSystemUsage
org.apache.activemq.usage.SystemUsage
proxyConnectors
(java.lang.Object)*
Sets the network connectors which this broker will use to connect to other brokers in a federated network
services
(org.apache.activemq.Service)*
Sets the services associated with this broker such as a {@link MasterConnector}
shutdownOnMasterFailure
boolean
start
boolean
Sets whether or not the broker is started along with the ApplicationContext it is defined within. Normally you would want the broker to start up along with the ApplicationContext but sometimes when working with JUnit tests you may wish to start and stop the broker explicitly yourself.
supportFailOver
boolean
systemUsage
org.apache.activemq.usage.SystemUsage
taskRunnerFactory
org.apache.activemq.thread.TaskRunnerFactory
tempDataStore
org.apache.activemq.kaha.Store
tmpDataDirectory
java.io.File
transportConnectorURIs
(java.lang.String)*
transportConnectors
(org.apache.activemq.broker.TransportConnector)*
Sets the transport connectors which this broker will listen on for new clients
useJmx
boolean
Sets whether or not the Broker’s services should be exposed into JMX or not.
useLocalHostBrokerName
boolean
useLoggingForShutdownErrors
boolean
Sets whether or not we should use commons-logging when reporting errors when shutting down the broker
useMirroredQueues
boolean
Sets whether or not Mirrored Queues should be supported by default if they have not been explicitly configured.
useShutdownHook
boolean
Sets whether or not we should use a shutdown handler to close down the broker cleanly if the JVM is terminated. It is recommended you leave this enabled.
useVirtualTopics
boolean
Sets whether or not Virtual Topics should be supported by default if they have not been explicitly configured.
vmConnectorURI
java.net.URI
The <bytesJDBCAdapter> Element
This JDBCAdapter inserts and extracts BLOB data using the setBytes()/getBytes() operations. The databases/JDBC drivers that use this adapter are:
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <commandAgent> Element
An agent which listens to commands on a JMS destination
Properties
Property Name
Type
Description
brokerUrl
java.lang.String
commandDestination
javax.jms.Destination
connection
javax.jms.Connection
connectionFactory
javax.jms.ConnectionFactory
The <compositeDemandForwardingBridge> Element
A demand forwarding bridge which works with multicast style transports where a single Transport could be communicating with multiple remote brokers
Properties
Property Name
Type
Description
configuration
org.apache.activemq.network.NetworkBridgeConfiguration
createdByDuplex
boolean
durableDestinations
(org.apache.activemq.command.ActiveMQDestination)*
dynamicallyIncludedDestinations
(org.apache.activemq.command.ActiveMQDestination)*
excludedDestinations
(org.apache.activemq.command.ActiveMQDestination)*
localBroker
org.apache.activemq.transport.Transport
networkBridgeListener
org.apache.activemq.network.NetworkBridgeListener
remoteBroker
org.apache.activemq.transport.Transport
staticallyIncludedDestinations
(org.apache.activemq.command.ActiveMQDestination)*
The <compositeQueue> Element
Represents a virtual queue which forwards to a number of other destinations.
Properties
Property Name
Type
Description
copyMessage
boolean
Sets whether a copy of the message will be sent to each destination. Defaults to true so that the forward destination is set as the destination of the message
forwardOnly
boolean
Sets if the virtual destination is forward only (and so there is no physical queue to match the virtual queue) or if there is also a physical queue with the same name).
forwardTo
(java.lang.Object)*
Sets the list of destinations to forward to
name
java.lang.String
Sets the name of this composite destination
The <compositeTopic> Element
Represents a virtual topic which forwards to a number of other destinations.
Properties
Property Name
Type
Description
copyMessage
boolean
Sets whether a copy of the message will be sent to each destination. Defaults to true so that the forward destination is set as the destination of the message
forwardOnly
boolean
Sets if the virtual destination is forward only (and so there is no physical queue to match the virtual queue) or if there is also a physical queue with the same name).
forwardTo
(java.lang.Object)*
Sets the list of destinations to forward to
name
java.lang.String
Sets the name of this composite destination
The <connectionDotFilePlugin> Element
A DOT file creator plugin which creates a DOT file showing the current connections
Properties
Property Name
Type
Description
file
java.lang.String
Sets the destination file name to create the destination diagram
The <connectionFactory> Element
A Spring enhanced connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
Properties
Property Name
Type
Description
alwaysSessionAsync
boolean
If this flag is set then a separate thread is not used for dispatching messages for each Session in the Connection. However, a separate thread is always used if there is more than one session, or the session isn’t in auto acknowledge or duplicates ok mode
alwaysSyncSend
boolean
Set true if always require messages to be sync sent
beanName
java.lang.String
blobTransferPolicy
org.apache.activemq.blob.BlobTransferPolicy
Sets the policy used to describe how out-of-band BLOBs (Binary Large OBjects) are transferred from producers to brokers to consumers
brokerURL
java.lang.String
Sets the connection URL used to connect to the ActiveMQ Classic broker.
clientID
java.lang.String
Sets the JMS clientID to use for the created connection. Note that this can only be used by one connection at once so generally its a better idea to set the clientID on a Connection
clientIDPrefix
java.lang.String
Sets the prefix used by autogenerated JMS Client ID values which are used if the JMS client does not explicitly specify on.
clientIdGenerator
org.apache.activemq.util.IdGenerator
closeTimeout
int
Sets the timeout before a close is considered complete. Normally a close() on a connection waits for confirmation from the broker; this allows that operation to timeout to save the client hanging if there is no broker
copyMessageOnSend
boolean
Should a JMS message be copied to a new JMS Message object as part of the send() method in JMS. This is enabled by default to be compliant with the JMS specification. You can disable it if you do not mutate JMS messages after they are sent for a performance boost
disableTimeStampsByDefault
boolean
Sets whether or not timestamps on messages should be disabled or not. If you disable them it adds a small performance boost.
dispatchAsync
boolean
Enables or disables the default setting of whether or not consumers have their messages dispatched synchronously or asynchronously by the broker. For non-durable topics for example we typically dispatch synchronously by default to minimize context switches which boost performance. However sometimes its better to go slower to ensure that a single blocked consumer socket does not block delivery to other consumers.
exclusiveConsumer
boolean
Enables or disables whether or not queue consumers should be exclusive or not for example to preserve ordering when not using Message Groups
nestedMapAndListEnabled
boolean
Enables/disables whether or not Message properties and MapMessage entries support Nested Structures of Map and List objects
objectMessageSerializationDefered
boolean
When an object is set on an ObjectMessage, the JMS spec requires the object to be serialized by that set method. Enabling this flag causes the object to not get serialized. The object may subsequently get serialized if the message needs to be sent over a socket or stored to disk.
optimizeAcknowledge
boolean
optimizedMessageDispatch
boolean
If this flag is set then an larger prefetch limit is used - only applicable for durable topic subscribers.
password
java.lang.String
Sets the JMS password used for connections created from this factory
prefetchPolicy
org.apache.activemq.ActiveMQPrefetchPolicy
Sets the prefetch policy for consumers created by this connection.
producerWindowSize
int
properties
java.util.Properties
Get the properties from this instance for storing in JNDI
redeliveryPolicy
org.apache.activemq.RedeliveryPolicy
Sets the global redelivery policy to be used when a message is delivered but the session is rolled back
statsEnabled
boolean
transformer
org.apache.activemq.MessageTransformer
Sets the transformer used to transform messages before they are sent on to the JMS bus or when they are received from the bus but before they are delivered to the JMS client
transportListener
org.apache.activemq.transport.TransportListener
Allows a listener to be configured on the ConnectionFactory so that when this factory is used with frameworks which don’t expose the Connection such as Spring JmsTemplate, you can still register a transport listener.
useAsyncSend
boolean
Forces the use of Async Sends which adds a massive performance boost; but means that the send() method will return immediately whether the message has been sent or not which could lead to message loss.
useBeanNameAsClientIdPrefix
boolean
useCompression
boolean
Enables the use of compression of the message bodies
useRetroactiveConsumer
boolean
Sets whether or not retroactive consumers are enabled. Retroactive consumers allow non-durable topic subscribers to receive old messages that were published before the non-durable subscriber started.
userName
java.lang.String
Sets the JMS userName used by connections created by this factory
warnAboutUnstartedConnectionTimeout
long
Enables the timeout from a connection creation to when a warning is generated if the connection is not properly started via {@link Connection#start()} and a message is received by a consumer. It is a very common gotcha to forget to start the connection so this option makes the default case to create a warning if the user forgets. To disable the warning just set the value to < 0 (say -1).
watchTopicAdvisories
boolean
The <constantPendingMessageLimitStrategy> Element
This PendingMessageLimitStrategy is configured to a constant value for all subscriptions.
Properties
Property Name
Type
Description
limit
int
The <db2JDBCAdapter> Element
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <defaultJDBCAdapter> Element
Implements all the default JDBC operations that are used by the JDBCPersistenceAdapter.
sub-classing is encouraged to override the default implementation of methods to account for differences in JDBC Driver implementations.
The JDBCAdapter inserts and extracts BLOB data using the getBytes()/setBytes() operations.
The databases/JDBC drivers that use this adapter are:
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <defaultUsageCapacity> Element
Identify if a limit has been reached
Properties
Property Name
Type
Description
limit
long
The <demandForwardingBridge> Element
Forwards messages from the local broker to the remote broker based on demand.
Properties
Property Name
Type
Description
configuration
org.apache.activemq.network.NetworkBridgeConfiguration
createdByDuplex
boolean
durableDestinations
(org.apache.activemq.command.ActiveMQDestination)*
dynamicallyIncludedDestinations
(org.apache.activemq.command.ActiveMQDestination)*
excludedDestinations
(org.apache.activemq.command.ActiveMQDestination)*
localBroker
org.apache.activemq.transport.Transport
networkBridgeListener
org.apache.activemq.network.NetworkBridgeListener
remoteBroker
org.apache.activemq.transport.Transport
staticallyIncludedDestinations
(org.apache.activemq.command.ActiveMQDestination)*
The <destinationDotFilePlugin> Element
A DOT file creator plugin which creates a DOT file showing the current topic & queue hierarchies.
Properties
Property Name
Type
Description
file
java.lang.String
Sets the destination file name to create the destination diagram
The <destinationEntry> Element
A default entry in a DestinationMap which holds a single value.
Properties
Property Name
Type
Description
destination
org.apache.activemq.command.ActiveMQDestination
queue
java.lang.String
A helper method to set the destination from a configuration file
topic
java.lang.String
A helper method to set the destination from a configuration file
value
java.lang.Object
The <fileCursor> Element
Pending messages
The <fileDurableSubscriberCursor> Element
Pending messages for durable subscribers
The <fileQueueCursor> Element
Pending
The <filteredDestination> Element
Represents a destination which is filtered using some predicate such as a selector so that messages are only dispatched to the destination if they match the filter.
Properties
Property Name
Type
Description
destination
org.apache.activemq.command.ActiveMQDestination
The destination to send messages to if they match the filter
filter
org.apache.activemq.filter.BooleanExpression
queue
java.lang.String
Sets the destination property to the given queue name
selector
java.lang.String
Sets the JMS selector used to filter messages before forwarding them to this destination
topic
java.lang.String
Sets the destination property to the given topic name
The <fixedCountSubscriptionRecoveryPolicy> Element
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed count of last messages.
Properties
Property Name
Type
Description
maximumSize
int
Sets the maximum number of messages that this destination will hold around in RAM
The <fixedSizedSubscriptionRecoveryPolicy> Element
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed amount of memory available in RAM for message history which is evicted in time order.
Properties
Property Name
Type
Description
buffer
org.apache.activemq.memory.list.MessageList
maximumSize
int
Sets the maximum amount of RAM in bytes that this buffer can hold in RAM
useSharedBuffer
boolean
The <forwardingBridge> Element
Forwards all messages from the local broker to the remote broker.
Properties
Property Name
Type
Description
clientId
java.lang.String
destinationFilter
java.lang.String
dispatchAsync
boolean
localBroker
org.apache.activemq.transport.Transport
networkBridgeFailedListener
org.apache.activemq.network.NetworkBridgeListener
prefetchSize
int
remoteBroker
org.apache.activemq.transport.Transport
The <imageBasedJDBCAdaptor> Element
Provides JDBCAdapter since that uses IMAGE datatype to hold binary data. The databases/JDBC drivers that use this adapter are:
- Sybase
- MS SQL
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <inboundQueueBridge> Element
Create an Inbound Queue Bridge
Properties
Property Name
Type
Description
consumer
javax.jms.MessageConsumer
consumerConnection
javax.jms.QueueConnection
consumerQueue
javax.jms.Queue
doHandleReplyTo
boolean
inboundQueueName
java.lang.String
jmsConnector
org.apache.activemq.network.jms.JmsConnector
jmsMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
localQueueName
java.lang.String
maximumRetries
int
Sets the maximum number of retries if a send fails before closing the bridge
producerConnection
javax.jms.QueueConnection
producerQueue
javax.jms.Queue
selector
java.lang.String
The <inboundTopicBridge> Element
Create an Inbound Topic Bridge
Properties
Property Name
Type
Description
consumer
javax.jms.MessageConsumer
consumerConnection
javax.jms.TopicConnection
consumerName
java.lang.String
consumerTopic
javax.jms.Topic
doHandleReplyTo
boolean
inboundTopicName
java.lang.String
jmsConnector
org.apache.activemq.network.jms.JmsConnector
jmsMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
localTopicName
java.lang.String
maximumRetries
int
Sets the maximum number of retries if a send fails before closing the bridge
producerConnection
javax.jms.TopicConnection
producerTopic
javax.jms.Topic
selector
java.lang.String
The <individualDeadLetterStrategy> Element
A {@link DeadLetterStrategy} where each destination has its own individual DLQ using the subject naming hierarchy.
Properties
Property Name
Type
Description
processExpired
boolean
processNonPersistent
boolean
queuePrefix
java.lang.String
Sets the prefix to use for all dead letter queues for queue messages
topicPrefix
java.lang.String
Sets the prefix to use for all dead letter queues for topic messages
useQueueForQueueMessages
boolean
Sets whether a queue or topic should be used for queue messages sent to a DLQ. The default is to use a Queue
useQueueForTopicMessages
boolean
Sets whether a queue or topic should be used for topic messages sent to a DLQ. The default is to use a Queue
The <informixJDBCAdapter> Element
JDBC Adapter for Informix database. Because Informix database restricts length of composite primary keys, length of container name field and subscription id field must be reduced to 150 characters. Therefore be sure not to use longer names for container name and subscription id than 150 characters.
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <jaasAuthenticationPlugin> Element
Provides a JAAS based authentication plugin
Properties
Property Name
Type
Description
configuration
java.lang.String
Sets the JAAS configuration domain name used
discoverLoginConfig
boolean
Enables or disables the auto-discovery of the login.config file for JAAS to initialize itself. This flag is enabled by default such that if the java.security.auth.login.config system property is not defined then it is set to the location of the login.config file on the classpath.
The <jaasCertificateAuthenticationPlugin> Element
Provides a JAAS based SSL certificate authentication plugin
Properties
Property Name
Type
Description
configuration
java.lang.String
Sets the JAAS configuration domain name used
discoverLoginConfig
boolean
Enables or disables the auto-discovery of the login.config file for JAAS to initialize itself. This flag is enabled by default such that if the java.security.auth.login.config system property is not defined then it is set to the location of the login.config file on the classpath.
The <jdbcPersistenceAdapter> Element
A {@link PersistenceAdapter} implementation using JDBC for persistence storage. This persistence adapter will correctly remember prepared XA transactions, but it will not keep track of local transaction commits so that operations performed against the Message store are done as a single uow.
Properties
Property Name
Type
Description
adapter
org.apache.activemq.store.jdbc.JDBCAdapter
brokerName
java.lang.String
brokerService
org.apache.activemq.broker.BrokerService
cleanupPeriod
int
Sets the number of milliseconds until the database is attempted to be cleaned up for durable topics
createTablesOnStartup
boolean
Sets whether or not tables are created on startup
dataDirectory
java.lang.String
dataDirectoryFile
java.io.File
dataSource
javax.sql.DataSource
databaseLocker
org.apache.activemq.store.jdbc.DatabaseLocker
Sets the database locker strategy to use to lock the database on startup
directory
java.io.File
ds
javax.sql.DataSource
scheduledThreadPoolExecutor
java.util.concurrent.ScheduledThreadPoolExecutor
statements
org.apache.activemq.store.jdbc.Statements
usageManager
org.apache.activemq.usage.SystemUsage
useDatabaseLock
boolean
Sets whether or not an exclusive database lock should be used to enable JDBC Master/Slave. Enabled by default.
useExternalMessageReferences
boolean
wireFormat
org.apache.activemq.wireformat.WireFormat
The <jmsQueueConnector> Element
A Bridge to other JMS Queue providers
Properties
Property Name
Type
Description
brokerService
org.apache.activemq.broker.BrokerService
One way to configure the local connection - this is called by The BrokerService when the Connector is embedded
inboundMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
inboundQueueBridges
(org.apache.activemq.network.jms.InboundQueueBridge)*
jndiLocalTemplate
org.springframework.jndi.JndiTemplate
jndiOutboundTemplate
org.springframework.jndi.JndiTemplate
localConnectionFactoryName
java.lang.String
localPassword
java.lang.String
localQueueConnection
javax.jms.QueueConnection
localQueueConnectionFactory
javax.jms.QueueConnectionFactory
localUsername
java.lang.String
name
java.lang.String
outboundMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
outboundPassword
java.lang.String
outboundQueueBridges
(org.apache.activemq.network.jms.OutboundQueueBridge)*
outboundQueueConnection
javax.jms.QueueConnection
outboundQueueConnectionFactory
javax.jms.QueueConnectionFactory
outboundQueueConnectionFactoryName
java.lang.String
outboundUsername
java.lang.String
replyToDestinationCacheSize
int
The <jmsTopicConnector> Element
A Bridge to other JMS Topic providers
Properties
Property Name
Type
Description
brokerService
org.apache.activemq.broker.BrokerService
One way to configure the local connection - this is called by The BrokerService when the Connector is embedded
inboundMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
inboundTopicBridges
(org.apache.activemq.network.jms.InboundTopicBridge)*
jndiLocalTemplate
org.springframework.jndi.JndiTemplate
jndiOutboundTemplate
org.springframework.jndi.JndiTemplate
localConnectionFactoryName
java.lang.String
localPassword
java.lang.String
localTopicConnection
javax.jms.TopicConnection
localTopicConnectionFactory
javax.jms.TopicConnectionFactory
localUsername
java.lang.String
name
java.lang.String
outboundMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
outboundPassword
java.lang.String
outboundTopicBridges
(org.apache.activemq.network.jms.OutboundTopicBridge)*
outboundTopicConnection
javax.jms.TopicConnection
outboundTopicConnectionFactory
javax.jms.TopicConnectionFactory
outboundTopicConnectionFactoryName
java.lang.String
outboundUsername
java.lang.String
replyToDestinationCacheSize
int
The <journalPersistenceAdapter> Element
An implementation of {@link PersistenceAdapter} designed for use with a {@link Journal} and then check pointing asynchronously on a timeout with some other long term persistent storage.
Properties
Property Name
Type
Description
brokerName
java.lang.String
directory
java.io.File
journal
org.apache.activeio.journal.Journal
longTermPersistence
org.apache.activemq.store.PersistenceAdapter
maxCheckpointMessageAddSize
int
maxCheckpointWorkers
int
taskRunnerFactory
org.apache.activemq.thread.TaskRunnerFactory
usageManager
org.apache.activemq.usage.SystemUsage
useExternalMessageReferences
boolean
The <journaledJDBC> Element
Creates a default persistence model using the Journal and JDBC
Properties
Property Name
Type
Description
adapter
org.apache.activemq.store.jdbc.JDBCAdapter
createTablesOnStartup
boolean
Sets whether or not tables are created on startup
dataDirectory
java.lang.String
dataDirectoryFile
java.io.File
dataSource
javax.sql.DataSource
jdbcAdapter
org.apache.activemq.store.jdbc.JDBCPersistenceAdapter
journal
org.apache.activeio.journal.Journal
journalArchiveDirectory
java.io.File
journalLogFileSize
int
Sets the size of the journal log files
journalLogFiles
int
Sets the number of journal log files to use
journalThreadPriority
int
Sets the thread priority of the journal thread
statements
org.apache.activemq.store.jdbc.Statements
taskRunnerFactory
org.apache.activemq.thread.TaskRunnerFactory
useDatabaseLock
boolean
Sets whether or not an exclusive database lock should be used to enable JDBC Master/Slave. Enabled by default.
useJournal
boolean
Enables or disables the use of the journal. The default is to use the journal
useQuickJournal
boolean
Enables or disables the use of quick journal, which keeps messages in the journal and just stores a reference to the messages in JDBC. Defaults to false so that messages actually reside long term in the JDBC database.
The <kahaPersistenceAdapter> Element
Properties
Property Name
Type
Description
brokerName
java.lang.String
directory
java.io.File
maxDataFileLength
long
persistentIndex
boolean
size
java.util.concurrent.atomic.AtomicLong
usageManager
org.apache.activemq.usage.SystemUsage
The <lDAPAuthorizationMap> Element
An {@link AuthorizationMap} which uses LDAP
Properties
Property Name
Type
Description
adminAttribute
java.lang.String
adminBase
java.lang.String
authentication
java.lang.String
connectionPassword
java.lang.String
connectionProtocol
java.lang.String
connectionURL
java.lang.String
connectionUsername
java.lang.String
context
javax.naming.directory.DirContext
initialContextFactory
java.lang.String
options
java.util.Map
queueSearchMatchingFormat
java.text.MessageFormat
queueSearchSubtreeBool
boolean
readAttribute
java.lang.String
readBase
java.lang.String
topicSearchMatchingFormat
java.text.MessageFormat
topicSearchSubtreeBool
boolean
writeAttribute
java.lang.String
writeBase
java.lang.String
The <lastImageSubscriptionRecoveryPolicy> Element
This implementation of {@link SubscriptionRecoveryPolicy} will only keep the last message.
The <ldapNetworkConnector> Element
class to create dynamic network connectors listed in an directory server using the LDAP v3 protocol as defined in RFC 2251, the entries listed in the directory server must implement the ipHost and ipService objectClasses as defined in RFC 2307.
Properties
Property Name
Type
Description
base
java.lang.String
sets the base LDAP dn used for lookup operations
bridgeTempDestinations
boolean
brokerName
java.lang.String
brokerService
org.apache.activemq.broker.BrokerService
conduitSubscriptions
boolean
connectionFilter
org.apache.activemq.network.ConnectionFilter
decreaseNetworkConsumerPriority
boolean
destinationFilter
java.lang.String
dispatchAsync
boolean
duplex
boolean
durableDestinations
(java.lang.Object)*
dynamicOnly
boolean
dynamicallyIncludedDestinations
(java.lang.Object)*
excludedDestinations
(java.lang.Object)*
localUri
java.net.URI
name
java.lang.String
networkTTL
int
objectName
javax.management.ObjectName
password
java.lang.String
sets the LDAP password for access credentials
prefetchSize
int
searchFilter
java.lang.String
sets the LDAP search filter as defined in RFC 2254
searchScope
java.lang.String
sets the LDAP search scope
staticallyIncludedDestinations
(java.lang.Object)*
uri
java.net.URI
sets the LDAP server URI
user
java.lang.String
sets the LDAP user for access credentials
userName
java.lang.String
The <loggingBrokerPlugin> Element
A simple Broker interceptor which allows you to enable/disable logging.
Properties
Property Name
Type
Description
ackLog
org.apache.commons.logging.Log
adminConnectionContext
org.apache.activemq.broker.ConnectionContext
log
org.apache.commons.logging.Log
next
org.apache.activemq.broker.Broker
sendLog
org.apache.commons.logging.Log
The <managementContext> Element
A Flow provides different dispatch policies within the NMR
Properties
Property Name
Type
Description
MBeanServer
javax.management.MBeanServer
Get the MBeanServer
connectorPath
java.lang.String
connectorPort
int
createConnector
boolean
createMBeanServer
boolean
findTigerMbeanServer
boolean
Enables/disables the searching for the Java 5 platform MBeanServer
jmxDomainName
java.lang.String
rmiServerPort
int
server
javax.management.MBeanServer
useMBeanServer
boolean
The <masterConnector> Element
Connects a Slave Broker to a Master when using Master Slave for High Availability of messages.
Properties
Property Name
Type
Description
brokerService
org.apache.activemq.broker.BrokerService
localURI
java.net.URI
password
java.lang.String
remoteURI
java.net.URI
remoteUri
java.lang.String
userName
java.lang.String
The <memoryPersistenceAdapter> Element
Properties
Property Name
Type
Description
brokerName
java.lang.String
directory
java.io.File
usageManager
org.apache.activemq.usage.SystemUsage
useExternalMessageReferences
boolean
The <memoryUsage> Element
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
Properties
Property Name
Type
Description
limit
long
Sets the memory limit in bytes. Setting the limit in bytes will set the usagePortion to 0 since the UsageManager is not going to be portion based off the parent. When set using XBean, you can use values such as: “20 mb”, “1024 kb”, or “1 gb”
limiter
org.apache.activemq.usage.UsageCapacity
name
java.lang.String
parent
T
percentUsage
int
percentUsageMinDelta
int
Sets the minimum number of percentage points the usage has to change before a UsageListener event is fired by the manager.
pollingTime
int
portion
float
usage
long
usagePortion
float
The <messageGroupHashBucketFactory> Element
A factory to create instances of {@link SimpleMessageGroupMap} when implementing the Message Groups functionality.
Properties
Property Name
Type
Description
bucketCount
int
Sets the number of hash buckets to use for the message group functionality. This is only applicable to using message groups to parallelize processing of a queue while preserving order across an individual JMSXGroupID header value. This value sets the number of hash buckets that will be used (i.e. the maximum possible concurrency).
The <mirroredQueue> Element
Creates Mirrored Queue using a prefix and postfix to define the topic name on which to mirror the queue to.
Properties
Property Name
Type
Description
brokerService
org.apache.activemq.broker.BrokerService
copyMessage
boolean
Sets whether a copy of the message will be sent to each destination. Defaults to true so that the forward destination is set as the destination of the message
postfix
java.lang.String
Sets any postix used to identify the queue consumers
prefix
java.lang.String
Sets the prefix wildcard used to identify the queue consumers for a given topic
The <multicastNetworkConnector> Element
A network connector which uses some kind of multicast-like transport that communicates with potentially many remote brokers over a single logical {@link Transport} instance such as when using multicast. This implementation does not depend on multicast at all; any other group based transport could be used.
Properties
Property Name
Type
Description
bridge
org.apache.activemq.network.DemandForwardingBridgeSupport
bridgeTempDestinations
boolean
brokerName
java.lang.String
brokerService
org.apache.activemq.broker.BrokerService
conduitSubscriptions
boolean
connectionFilter
org.apache.activemq.network.ConnectionFilter
decreaseNetworkConsumerPriority
boolean
destinationFilter
java.lang.String
dispatchAsync
boolean
duplex
boolean
durableDestinations
(java.lang.Object)*
dynamicOnly
boolean
dynamicallyIncludedDestinations
(java.lang.Object)*
excludedDestinations
(java.lang.Object)*
localTransport
org.apache.activemq.transport.Transport
localUri
java.net.URI
name
java.lang.String
networkTTL
int
objectName
javax.management.ObjectName
password
java.lang.String
prefetchSize
int
remoteTransport
org.apache.activemq.transport.Transport
Sets the remote transport implementation
remoteURI
java.net.URI
Sets the remote transport URI to some group transport like multicast://address:port
staticallyIncludedDestinations
(java.lang.Object)*
userName
java.lang.String
The <multicastTraceBrokerPlugin> Element
A Broker interceptor which allows you to trace all operations to a Multicast socket.
Properties
Property Name
Type
Description
address
java.net.SocketAddress
adminConnectionContext
org.apache.activemq.broker.ConnectionContext
broadcast
boolean
destination
java.net.URI
maxTraceDatagramSize
int
next
org.apache.activemq.broker.Broker
timeToLive
int
wireFormat
org.apache.activemq.wireformat.WireFormat
wireFormatFactory
org.apache.activemq.wireformat.WireFormatFactory
The <networkConnector> Element
A network connector which uses a discovery agent to detect the remote brokers available and setup a connection to each available remote broker
Properties
Property Name
Type
Description
bridgeTempDestinations
boolean
brokerName
java.lang.String
brokerService
org.apache.activemq.broker.BrokerService
conduitSubscriptions
boolean
connectionFilter
org.apache.activemq.network.ConnectionFilter
decreaseNetworkConsumerPriority
boolean
destinationFilter
java.lang.String
discoveryAgent
org.apache.activemq.transport.discovery.DiscoveryAgent
discoveryURI
java.net.URI
dispatchAsync
boolean
duplex
boolean
durableDestinations
(java.lang.Object)*
dynamicOnly
boolean
dynamicallyIncludedDestinations
(java.lang.Object)*
excludedDestinations
(java.lang.Object)*
localUri
java.net.URI
name
java.lang.String
networkTTL
int
objectName
javax.management.ObjectName
password
java.lang.String
prefetchSize
int
staticallyIncludedDestinations
(java.lang.Object)*
uri
java.net.URI
userName
java.lang.String
The <noSubscriptionRecoveryPolicy> Element
This SubscriptionRecoveryPolicy disable recovery of messages.
The <oldestMessageEvictionStrategy> Element
An eviction strategy which evicts the oldest message first (which is the default).
Properties
Property Name
Type
Description
evictExpiredMessagesHighWatermark
int
Sets the high water mark on which we will eagerly evict expired messages from RAM
The <oldestMessageWithLowestPriorityEvictionStrategy> Element
An eviction strategy which evicts the oldest message with the lowest priority first.
Properties
Property Name
Type
Description
evictExpiredMessagesHighWatermark
int
Sets the high water mark on which we will eagerly evict expired messages from RAM
The <oracleJDBCAdapter> Element
Implements all the default JDBC operations that are used by the JDBCPersistenceAdapter.
Subclassing is encouraged to override the default implementation of methods to account for differences in JDBC Driver implementations.
The JDBCAdapter inserts and extracts BLOB data using the getBytes()/setBytes() operations.
The databases/JDBC drivers that use this adapter are:
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <outboundQueueBridge> Element
Create an Outbound Queue Bridge
Properties
Property Name
Type
Description
consumer
javax.jms.MessageConsumer
consumerConnection
javax.jms.QueueConnection
consumerQueue
javax.jms.Queue
doHandleReplyTo
boolean
jmsConnector
org.apache.activemq.network.jms.JmsConnector
jmsMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
localQueueName
java.lang.String
maximumRetries
int
Sets the maximum number of retries if a send fails before closing the bridge
outboundQueueName
java.lang.String
producerConnection
javax.jms.QueueConnection
producerQueue
javax.jms.Queue
selector
java.lang.String
The <outboundTopicBridge> Element
Create an Outbound Topic Bridge
Properties
Property Name
Type
Description
consumer
javax.jms.MessageConsumer
consumerConnection
javax.jms.TopicConnection
consumerName
java.lang.String
consumerTopic
javax.jms.Topic
doHandleReplyTo
boolean
jmsConnector
org.apache.activemq.network.jms.JmsConnector
jmsMessageConvertor
org.apache.activemq.network.jms.JmsMesageConvertor
localTopicName
java.lang.String
maximumRetries
int
Sets the maximum number of retries if a send fails before closing the bridge
outboundTopicName
java.lang.String
producerConnection
javax.jms.TopicConnection
producerTopic
javax.jms.Topic
selector
java.lang.String
The <policyEntry> Element
Represents an entry in a {@link PolicyMap} for assigning policies to a specific destination or a hierarchical wildcard area of destinations.
Properties
Property Name
Type
Description
deadLetterStrategy
org.apache.activemq.broker.region.policy.DeadLetterStrategy
Sets the policy used to determine which dead letter queue destination should be used
destination
org.apache.activemq.command.ActiveMQDestination
dispatchPolicy
org.apache.activemq.broker.region.policy.DispatchPolicy
enableAudit
boolean
maxAuditDepth
int
maxProducersToAudit
int
maxQueueAuditDepth
int
memoryLimit
long
messageEvictionStrategy
org.apache.activemq.broker.region.policy.MessageEvictionStrategy
Sets the eviction strategy used to decide which message to evict when the slow consumer needs to discard messages
messageGroupMapFactory
org.apache.activemq.broker.region.group.MessageGroupMapFactory
Sets the factory used to create new instances of {MessageGroupMap} used to implement the Message Groups functionality.
optimizedDispatch
boolean
pendingDurableSubscriberPolicy
org.apache.activemq.broker.region.policy.PendingDurableSubscriberMessageStoragePolicy
pendingMessageLimitStrategy
org.apache.activemq.broker.region.policy.PendingMessageLimitStrategy
Sets the strategy to calculate the maximum number of messages that are allowed to be pending on consumers (in addition to their prefetch sizes). Once the limit is reached, non-durable topics can then start discarding old messages. This allows us to keep dispatching messages to slow consumers while not blocking fast consumers and discarding the messages oldest first.
pendingQueuePolicy
org.apache.activemq.broker.region.policy.PendingQueueMessageStoragePolicy
pendingSubscriberPolicy
org.apache.activemq.broker.region.policy.PendingSubscriberMessageStoragePolicy
producerFlowControl
boolean
queue
java.lang.String
A helper method to set the destination from a configuration file
sendAdvisoryIfNoConsumers
boolean
Sends an advisory message if a non-persistent message is sent and there are no active consumers
subscriptionRecoveryPolicy
org.apache.activemq.broker.region.policy.SubscriptionRecoveryPolicy
topic
java.lang.String
A helper method to set the destination from a configuration file
The <policyMap> Element
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies.
Properties
Property Name
Type
Description
defaultEntry
org.apache.activemq.broker.region.policy.PolicyEntry
entries
(java.lang.Object)*
A helper method to allow the destination map to be populated from a dependency injection framework such as Spring
policyEntries
(java.lang.Object)*
Sets the individual entries on the policy map
The <prefetchPolicy> Element
Defines the prefetch message policies for different types of consumers
Properties
Property Name
Type
Description
all
int
durableTopicPrefetch
int
inputStreamPrefetch
int
maximumPendingMessageLimit
int
Sets how many messages a broker will keep around, above the prefetch limit, for non-durable topics before starting to discard older messages.
optimizeDurableTopicPrefetch
int
queueBrowserPrefetch
int
queuePrefetch
int
topicPrefetch
int
The <prefetchRatePendingMessageLimitStrategy> Element
This PendingMessageLimitStrategy sets the maximum pending message limit value to be a multiplier of the prefetch limit of the subscription.
Properties
Property Name
Type
Description
multiplier
double
Sets the multiplier of the prefetch size which will be used to define the maximum number of pending messages for non-durable topics before messages are discarded.
The <proxyConnector> Element
Properties
Property Name
Type
Description
bind
java.net.URI
localUri
java.net.URI
name
java.lang.String
remote
java.net.URI
server
org.apache.activemq.transport.TransportServer
The <queryBasedSubscriptionRecoveryPolicy> Element
This implementation of {@link SubscriptionRecoveryPolicy} will perform a user specific query mechanism to load any messages they may have missed.
Properties
Property Name
Type
Description
query
org.apache.activemq.broker.region.policy.MessageQuery
Sets the query strategy to load initial messages
The <queue> Element
An ActiveMQ Classic Queue
Properties
Property Name
Type
Description
compositeDestinations
(org.apache.activemq.command.ActiveMQDestination)*
name
java.lang.String
physicalName
java.lang.String
properties
java.util.Properties
Get the properties from this instance for storing in JNDI
The <redeliveryPolicy> Element
Configuration options used to control how messages are re-delivered when they are rolled back.
Properties
Property Name
Type
Description
backOffMultiplier
short
collisionAvoidancePercent
short
initialRedeliveryDelay
long
maximumRedeliveries
int
useCollisionAvoidance
boolean
useExponentialBackOff
boolean
The <roundRobinDispatchPolicy> Element
Simple dispatch policy that sends a message to every subscription that matches the message.
The <sharedDeadLetterStrategy> Element
A default implementation of {@link DeadLetterStrategy} which uses a constant destination.
Properties
Property Name
Type
Description
deadLetterQueue
org.apache.activemq.command.ActiveMQDestination
processExpired
boolean
processNonPersistent
boolean
The <simpleAuthenticationPlugin> Element
Provides a simple authentication plugin
Properties
Property Name
Type
Description
userGroups
java.util.Map
Sets the groups a user is in. The key is the user name and the value is a Set of groups
userPasswords
java.util.Map
Sets the map indexed by user name with the value the password
users
(java.lang.Object)*
Sets individual users for authentication
The <simpleAuthorizationMap> Element
An AuthorizationMap which is configured with individual DestinationMaps for each operation.
Properties
Property Name
Type
Description
adminACLs
org.apache.activemq.filter.DestinationMap
readACLs
org.apache.activemq.filter.DestinationMap
tempDestinationAuthorizationEntry
org.apache.activemq.security.TempDestinationAuthorizationEntry
writeACLs
org.apache.activemq.filter.DestinationMap
The <simpleDispatchPolicy> Element
Simple dispatch policy that sends a message to every subscription that matches the message.
The <simpleJmsMessageConvertor> Element
Converts Message from one JMS to another
Properties
Property Name
Type
Description
connection
javax.jms.Connection
The <simpleMessageGroupMapFactory> Element
A factory to create instances of {@link SimpleMessageGroupMap} when implementing the Message Groups functionality.
The <statements> Element
Properties
Property Name
Type
Description
addMessageStatement
java.lang.String
binaryDataType
java.lang.String
containerNameDataType
java.lang.String
createDurableSubStatement
java.lang.String
createSchemaStatements
(java.lang.String)*
deleteOldMessagesStatement
java.lang.String
deleteSubscriptionStatement
java.lang.String
destinationMessageCountStatement
java.lang.String
dropSchemaStatements
(java.lang.String)*
durableSubAcksTableName
java.lang.String
durableSubscriberMessageCountStatement
java.lang.String
findAllDestinationsStatement
java.lang.String
findAllDurableSubMessagesStatement
java.lang.String
findAllDurableSubsStatement
java.lang.String
findAllMessagesStatement
java.lang.String
findDurableSubMessagesStatement
java.lang.String
findDurableSubStatement
java.lang.String
findLastSequenceIdInAcksStatement
java.lang.String
findLastSequenceIdInMsgsStatement
java.lang.String
findMessageSequenceIdStatement
java.lang.String
findMessageStatement
java.lang.String
findNextMessagesStatement
java.lang.String
lastAckedDurableSubscriberMessageStatement
java.lang.String
lockCreateStatement
java.lang.String
lockTableName
java.lang.String
lockUpdateStatement
java.lang.String
longDataType
java.lang.String
messageTableName
java.lang.String
msgIdDataType
java.lang.String
nextDurableSubscriberMessageStatement
java.lang.String
removeAllMessagesStatement
java.lang.String
removeAllSubscriptionsStatement
java.lang.String
removeMessageStatment
java.lang.String
sequenceDataType
java.lang.String
stringIdDataType
java.lang.String
tablePrefix
java.lang.String
updateLastAckOfDurableSubStatement
java.lang.String
updateMessageStatement
java.lang.String
useExternalMessageReferences
boolean
useLockCreateWhereClause
boolean
The <storeCursor> Element
Pending messages
The <storeDurableSubscriberCursor> Element
Pending messages for a durable
The <storeUsage> Element
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
Properties
Property Name
Type
Description
limit
long
Sets the memory limit in bytes. Setting the limit in bytes will set the usagePortion to 0 since the UsageManager is not going to be portion based off the parent. When set using XBean, you can use values such as: “20 mb”, “1024 kb”, or “1 gb”
limiter
org.apache.activemq.usage.UsageCapacity
name
java.lang.String
parent
T
percentUsage
int
percentUsageMinDelta
int
Sets the minimum number of percentage points the usage has to change before a UsageListener event is fired by the manager.
pollingTime
int
store
org.apache.activemq.store.PersistenceAdapter
usagePortion
float
The <streamJDBCAdapter> Element
This JDBCAdapter inserts and extracts BLOB data using the setBinaryStream()/getBinaryStream() operations. The databases/JDBC drivers that use this adapter are:
- Axion
Properties
Property Name
Type
Description
batchStatments
boolean
statements
org.apache.activemq.store.jdbc.Statements
useExternalMessageReferences
boolean
The <strictOrderDispatchPolicy> Element
Dispatch policy that causes every subscription to see messages in the same order.
The <systemUsage> Element
Holder for Usage instances for memory, store and temp files Main use case is manage memory usage.
Properties
Property Name
Type
Description
adapter
org.apache.activemq.store.PersistenceAdapter
memoryUsage
org.apache.activemq.usage.MemoryUsage
name
java.lang.String
parent
org.apache.activemq.usage.SystemUsage
sendFailIfNoSpace
boolean
Sets whether or not a send() should fail if there is no space free. The default value is false which means to block the send() method until space becomes available
sendFailIfNoSpaceExplicitySet
boolean
storeUsage
org.apache.activemq.usage.StoreUsage
tempStore
org.apache.activemq.kaha.Store
tempUsage
org.apache.activemq.usage.TempUsage
The <tempDestinationAuthorizationEntry> Element
Represents an entry in a {@link DefaultAuthorizationMap} for assigning different operations (read, write, admin) of user roles to a temporary destination
Properties
Property Name
Type
Description
admin
java.lang.String
adminACLs
(java.lang.Object)*
destination
org.apache.activemq.command.ActiveMQDestination
groupClass
java.lang.String
queue
java.lang.String
A helper method to set the destination from a configuration file
read
java.lang.String
readACLs
(java.lang.Object)*
topic
java.lang.String
A helper method to set the destination from a configuration file
write
java.lang.String
writeACLs
(java.lang.Object)*
The <tempUsage> Element
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
Properties
Property Name
Type
Description
limit
long
Sets the memory limit in bytes. Setting the limit in bytes will set the usagePortion to 0 since the UsageManager is not going to be portion based off the parent. When set using XBean, you can use values such as: “20 mb”, “1024 kb”, or “1 gb”
limiter
org.apache.activemq.usage.UsageCapacity
name
java.lang.String
parent
T
percentUsage
int
percentUsageMinDelta
int
Sets the minimum number of percentage points the usage has to change before a UsageListener event is fired by the manager.
pollingTime
int
store
org.apache.activemq.kaha.Store
usagePortion
float
The <timeStampingBrokerPlugin> Element
A Broker interceptor which updates a JMS Client’s timestamp on the message with a broker timestamp. Useful when the clocks on client machines are known to not be correct and you can only trust the time set on the broker machines. Enabling this plugin will break JMS compliance since the timestamp that the producer sees on the messages after as send() will be different from the timestamp the consumer will observe when he receives the message. This plugin is not enabled in the default ActiveMQ Classic configuration.
Properties
Property Name
Type
Description
adminConnectionContext
org.apache.activemq.broker.ConnectionContext
next
org.apache.activemq.broker.Broker
The <timedSubscriptionRecoveryPolicy> Element
This implementation of {@link SubscriptionRecoveryPolicy} will keep a timed buffer of messages around in memory and use that to recover new subscriptions.
Properties
Property Name
Type
Description
recoverDuration
long
The <topic> Element
An ActiveMQ Classic Topic
Properties
Property Name
Type
Description
compositeDestinations
(org.apache.activemq.command.ActiveMQDestination)*
name
java.lang.String
physicalName
java.lang.String
properties
java.util.Properties
Get the properties from this instance for storing in JNDI
The <transportConnector> Element
Properties
Property Name
Type
Description
broker
org.apache.activemq.broker.Broker
brokerInfo
org.apache.activemq.command.BrokerInfo
brokerName
java.lang.String
connectUri
java.net.URI
disableAsyncDispatch
boolean
discoveryAgent
org.apache.activemq.transport.discovery.DiscoveryAgent
discoveryUri
java.net.URI
enableStatusMonitor
boolean
messageAuthorizationPolicy
org.apache.activemq.security.MessageAuthorizationPolicy
Sets the policy used to decide if the current connection is authorized to consume a given message
name
java.lang.String
server
org.apache.activemq.transport.TransportServer
taskRunnerFactory
org.apache.activemq.thread.TaskRunnerFactory
uri
java.net.URI
Sets the server transport URI to use if there is not a {@link TransportServer} configured via the {@link #setServer(TransportServer)} method. This value is used to lazy create a {@link TransportServer} instance
The <udpTraceBrokerPlugin> Element
A Broker interceptor which allows you to trace all operations to a UDP socket.
Properties
Property Name
Type
Description
address
java.net.SocketAddress
adminConnectionContext
org.apache.activemq.broker.ConnectionContext
broadcast
boolean
destination
java.net.URI
maxTraceDatagramSize
int
next
org.apache.activemq.broker.Broker
wireFormat
org.apache.activemq.wireformat.WireFormat
wireFormatFactory
org.apache.activemq.wireformat.WireFormatFactory
The <usageCapacity> Element
Identify if a limit has been reached
Properties
Property Name
Type
Description
limit
long
The <virtualDestinationInterceptor> Element
Implements Virtual Topics.
Properties
Property Name
Type
Description
virtualDestinations
(org.apache.activemq.broker.region.virtual.VirtualDestination)*
The <virtualTopic> Element
Creates Virtual Topics using a prefix and postfix. The virtual destination creates a wildcard that is then used to look up all active queue subscriptions which match.
Properties
Property Name
Type
Description
name
java.lang.String
postfix
java.lang.String
Sets any postix used to identify the queue consumers
prefix
java.lang.String
Sets the prefix wildcard used to identify the queue consumers for a given topic
The <vmCursor> Element
Pending messages held
The <vmDurableCursor> Element
Pending
The <vmQueueCursor> Element
Pending messages
The <xaConnectionFactory> Element
A Spring enhanced XA connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
Properties
Property Name
Type
Description
alwaysSessionAsync
boolean
If this flag is set then a separate thread is not used for dispatching messages for each Session in the Connection. However, a separate thread is always used if there is more than one session, or the session isn’t in auto acknowledge or duplicates ok mode
alwaysSyncSend
boolean
Set true if always require messages to be sync sent
beanName
java.lang.String
blobTransferPolicy
org.apache.activemq.blob.BlobTransferPolicy
Sets the policy used to describe how out-of-band BLOBs (Binary Large OBjects) are transferred from producers to brokers to consumers
brokerURL
java.lang.String
Sets the connection URL used to connect to the ActiveMQ Classic broker.
clientID
java.lang.String
Sets the JMS clientID to use for the created connection. Note that this can only be used by one connection at once so generally its a better idea to set the clientID on a Connection
clientIDPrefix
java.lang.String
Sets the prefix used by autogenerated JMS Client ID values which are used if the JMS client does not explicitly specify on.
clientIdGenerator
org.apache.activemq.util.IdGenerator
closeTimeout
int
Sets the timeout before a close is considered complete. Normally a close() on a connection waits for confirmation from the broker; this allows that operation to timeout to save the client hanging if there is no broker
copyMessageOnSend
boolean
Should a JMS message be copied to a new JMS Message object as part of the send() method in JMS. This is enabled by default to be compliant with the JMS specification. You can disable it if you do not mutate JMS messages after they are sent for a performance boost
disableTimeStampsByDefault
boolean
Sets whether or not timestamps on messages should be disabled or not. If you disable them it adds a small performance boost.
dispatchAsync
boolean
Enables or disables the default setting of whether or not consumers have their messages dispatched synchronously or asynchronously by the broker. For non-durable topics for example we typically dispatch synchronously by default to minimize context switches which boost performance. However sometimes its better to go slower to ensure that a single blocked consumer socket does not block delivery to other consumers.
exclusiveConsumer
boolean
Enables or disables whether or not queue consumers should be exclusive or not for example to preserve ordering when not using Message Groups
nestedMapAndListEnabled
boolean
Enables/disables whether or not Message properties and MapMessage entries support Nested Structures of Map and List objects
objectMessageSerializationDefered
boolean
When an object is set on an ObjectMessage, the JMS spec requires the object to be serialized by that set method. Enabling this flag causes the object to not get serialized. The object may subsequently get serialized if the message needs to be sent over a socket or stored to disk.
optimizeAcknowledge
boolean
optimizedMessageDispatch
boolean
If this flag is set then an larger prefetch limit is used - only applicable for durable topic subscribers.
password
java.lang.String
Sets the JMS password used for connections created from this factory
prefetchPolicy
org.apache.activemq.ActiveMQPrefetchPolicy
Sets the prefetch policy for consumers created by this connection.
producerWindowSize
int
properties
java.util.Properties
Get the properties from this instance for storing in JNDI
redeliveryPolicy
org.apache.activemq.RedeliveryPolicy
Sets the global redelivery policy to be used when a message is delivered but the session is rolled back
statsEnabled
boolean
transformer
org.apache.activemq.MessageTransformer
Sets the transformer used to transform messages before they are sent on to the JMS bus or when they are received from the bus but before they are delivered to the JMS client
transportListener
org.apache.activemq.transport.TransportListener
Allows a listener to be configured on the ConnectionFactory so that when this factory is used with frameworks which don’t expose the Connection such as Spring JmsTemplate, you can still register a transport listener.
useAsyncSend
boolean
Forces the use of Async Sends which adds a massive performance boost; but means that the send() method will return immediately whether the message has been sent or not which could lead to message loss.
useBeanNameAsClientIdPrefix
boolean
useCompression
boolean
Enables the use of compression of the message bodies
useRetroactiveConsumer
boolean
Sets whether or not retroactive consumers are enabled. Retroactive consumers allow non-durable topic subscribers to receive old messages that were published before the non-durable subscriber started.
userName
java.lang.String
Sets the JMS userName used by connections created by this factory
warnAboutUnstartedConnectionTimeout
long
Enables the timeout from a connection creation to when a warning is generated if the connection is not properly started via {@link Connection#start()} and a message is received by a consumer. It is a very common gotcha to forget to start the connection so this option makes the default case to create a warning if the user forgets. To disable the warning just set the value to < 0 (say -1).
watchTopicAdvisories
boolean
Element Index
<amqPersistenceAdapter>
An implementation of {@link PersistenceAdapter} designed for use with a {@link Journal} and then check pointing asynchronously on a timeout with some other long term persistent storage.
<amqPersistenceAdapterFactory>
An implementation of {@link PersistenceAdapterFactory}
<authenticationUser>
A helper object used to configure simple authentiaction plugin
<authorizationEntry>
Represents an entry in a {@link DefaultAuthorizationMap} for assigning different operations (read, write, admin) of user roles to a specific destination or a hierarchical wildcard area of destinations.
<authorizationMap>
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies. Each entry in the map represents the authorization ACLs for each operation.
<authorizationPlugin>
An authorization plugin where each operation on a destination is checked against an authorizationMap
<axionJDBCAdapter>
Axion specific Adapter. Axion does not seem to support ALTER statements or sub-selects. This means: - We cannot auto upgrade the schema was we roll out new versions of ActiveMQ Classic - We cannot delete durable sub messages that have be acknowledged by all consumers.
<blobJDBCAdapter>
This JDBCAdapter inserts and extracts BLOB data using the getBlob()/setBlob() operations. This is a little more involved since to insert a blob you have to: 1: insert empty blob. 2: select the blob 3: finally update the blob with data value. The databases/JDBC drivers that use this adapter are:
<broker>
An ActiveMQ Classic Message Broker. It consists of a number of transport connectors, network connectors and a bunch of properties which can be used to configure the broker as its lazily created.
<bytesJDBCAdapter>
This JDBCAdapter inserts and extracts BLOB data using the setBytes()/getBytes() operations. The databases/JDBC drivers that use this adapter are:
<commandAgent>
An agent which listens to commands on a JMS destination
<compositeDemandForwardingBridge>
A demand forwarding bridge which works with multicast style transports where a single Transport could be communicating with multiple remote brokers
<compositeQueue>
Represents a virtual queue which forwards to a number of other destinations.
<compositeTopic>
Represents a virtual topic which forwards to a number of other destinations.
<connectionDotFilePlugin>
A DOT file creator plugin which creates a DOT file showing the current connections
<connectionFactory>
A Spring enhanced connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.
<constantPendingMessageLimitStrategy>
This PendingMessageLimitStrategy is configured to a constant value for all subscriptions.
<db2JDBCAdapter>
<defaultJDBCAdapter>
Implements all the default JDBC operations that are used by the JDBCPersistenceAdapter.
sub-classing is encouraged to override the default implementation of methods to account for differences in JDBC Driver implementations.
The JDBCAdapter inserts and extracts BLOB data using the getBytes()/setBytes() operations.
The databases/JDBC drivers that use this adapter are:
<defaultUsageCapacity>
Identify if a limit has been reached
<demandForwardingBridge>
Forwards messages from the local broker to the remote broker based on demand.
<destinationDotFilePlugin>
A DOT file creator plugin which creates a DOT file showing the current topic & queue hierarchies.
<destinationEntry>
A default entry in a DestinationMap which holds a single value.
<fileCursor>
Pending messages
<fileDurableSubscriberCursor>
Pending messages for durable subscribers
<fileQueueCursor>
Pending
<filteredDestination>
Represents a destination which is filtered using some predicate such as a selector so that messages are only dispatched to the destination if they match the filter.
<fixedCountSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed count of last messages.
<fixedSizedSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will keep a fixed amount of memory available in RAM for message history which is evicted in time order.
<forwardingBridge>
Forwards all messages from the local broker to the remote broker.
<imageBasedJDBCAdaptor>
Provides JDBCAdapter since that uses IMAGE datatype to hold binary data. The databases/JDBC drivers that use this adapter are:
- Sybase
- MS SQL
<inboundQueueBridge>
Create an Inbound Queue Bridge
<inboundTopicBridge>
Create an Inbound Topic Bridge
<individualDeadLetterStrategy>
A {@link DeadLetterStrategy} where each destination has its own individual DLQ using the subject naming hierarchy.
<informixJDBCAdapter>
JDBC Adapter for Informix database. Because Informix database restricts length of composite primary keys, length of container name field and subscription id field must be reduced to 150 characters. Therefore be sure not to use longer names for container name and subscription id than 150 characters.
<jaasAuthenticationPlugin>
Provides a JAAS based authentication plugin
<jaasCertificateAuthenticationPlugin>
Provides a JAAS based SSL certificate authentication plugin
<jdbcPersistenceAdapter>
A {@link PersistenceAdapter} implementation using JDBC for persistence storage. This persistence adapter will correctly remember prepared XA transactions, but it will not keep track of local transaction commits so that operations performed against the Message store are done as a single uow.
<jmsQueueConnector>
A Bridge to other JMS Queue providers
<jmsTopicConnector>
A Bridge to other JMS Topic providers
<journalPersistenceAdapter>
An implementation of {@link PersistenceAdapter} designed for use with a {@link Journal} and then check pointing asynchronously on a timeout with some other long term persistent storage.
<journaledJDBC>
Creates a default persistence model using the Journal and JDBC
<kahaPersistenceAdapter>
<lDAPAuthorizationMap>
An {@link AuthorizationMap} which uses LDAP
<lastImageSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will only keep the last message.
<ldapNetworkConnector>
class to create dynamic network connectors listed in an directory server using the LDAP v3 protocol as defined in RFC 2251, the entries listed in the directory server must implement the ipHost and ipService objectClasses as defined in RFC 2307.
<loggingBrokerPlugin>
A simple Broker interceptor which allows you to enable/disable logging.
<managementContext>
A Flow provides different dispatch policies within the NMR
<masterConnector>
Connects a Slave Broker to a Master when using Master Slave for High Availability of messages.
<memoryPersistenceAdapter>
<memoryUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
<messageGroupHashBucketFactory>
A factory to create instances of {@link SimpleMessageGroupMap} when implementing the Message Groups functionality.
<mirroredQueue>
Creates Mirrored Queue using a prefix and postfix to define the topic name on which to mirror the queue to.
<multicastNetworkConnector>
A network connector which uses some kind of multicast-like transport that communicates with potentially many remote brokers over a single logical {@link Transport} instance such as when using multicast. This implementation does not depend on multicast at all; any other group based transport could be used.
<multicastTraceBrokerPlugin>
A Broker interceptor which allows you to trace all operations to a Multicast socket.
<networkConnector>
A network connector which uses a discovery agent to detect the remote brokers available and setup a connection to each available remote broker
<noSubscriptionRecoveryPolicy>
This SubscriptionRecoveryPolicy disable recovery of messages.
<oldestMessageEvictionStrategy>
An eviction strategy which evicts the oldest message first (which is the default).
<oldestMessageWithLowestPriorityEvictionStrategy>
An eviction strategy which evicts the oldest message with the lowest priority first.
<oracleJDBCAdapter>
Implements all the default JDBC operations that are used by the JDBCPersistenceAdapter.
Subclassing is encouraged to override the default implementation of methods to account for differences in JDBC Driver implementations.
The JDBCAdapter inserts and extracts BLOB data using the getBytes()/setBytes() operations.
The databases/JDBC drivers that use this adapter are:
<outboundQueueBridge>
Create an Outbound Queue Bridge
<outboundTopicBridge>
Create an Outbound Topic Bridge
<policyEntry>
Represents an entry in a {@link PolicyMap} for assigning policies to a specific destination or a hierarchical wildcard area of destinations.
<policyMap>
Represents a destination based configuration of policies so that individual destinations or wildcard hierarchies of destinations can be configured using different policies.
<prefetchPolicy>
Defines the prefetch message policies for different types of consumers
<prefetchRatePendingMessageLimitStrategy>
This PendingMessageLimitStrategy sets the maximum pending message limit value to be a multiplier of the prefetch limit of the subscription.
<proxyConnector>
<queryBasedSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will perform a user specific query mechanism to load any messages they may have missed.
<queue>
An ActiveMQ Classic Queue
<redeliveryPolicy>
Configuration options used to control how messages are re-delivered when they are rolled back.
<roundRobinDispatchPolicy>
Simple dispatch policy that sends a message to every subscription that matches the message.
<sharedDeadLetterStrategy>
A default implementation of {@link DeadLetterStrategy} which uses a constant destination.
<simpleAuthenticationPlugin>
Provides a simple authentication plugin
<simpleAuthorizationMap>
An AuthorizationMap which is configured with individual DestinationMaps for each operation.
<simpleDispatchPolicy>
Simple dispatch policy that sends a message to every subscription that matches the message.
<simpleJmsMessageConvertor>
Converts Message from one JMS to another
<simpleMessageGroupMapFactory>
A factory to create instances of {@link SimpleMessageGroupMap} when implementing the Message Groups functionality.
<statements>
<storeCursor>
Pending messages
<storeDurableSubscriberCursor>
Pending messages for a durable
<storeUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
<streamJDBCAdapter>
This JDBCAdapter inserts and extracts BLOB data using the setBinaryStream()/getBinaryStream() operations. The databases/JDBC drivers that use this adapter are:
- Axion
<strictOrderDispatchPolicy>
Dispatch policy that causes every subscription to see messages in the same order.
<systemUsage>
Holder for Usage instances for memory, store and temp files Main use case is manage memory usage.
<tempDestinationAuthorizationEntry>
Represents an entry in a {@link DefaultAuthorizationMap} for assigning different operations (read, write, admin) of user roles to a temporary destination
<tempUsage>
Used to keep track of how much of something is being used so that a productive working set usage can be controlled. Main use case is manage memory usage.
<timeStampingBrokerPlugin>
A Broker interceptor which updates a JMS Client’s timestamp on the message with a broker timestamp. Useful when the clocks on client machines are known to not be correct and you can only trust the time set on the broker machines. Enabling this plugin will break JMS compliance since the timestamp that the producer sees on the messages after as send() will be different from the timestamp the consumer will observe when he receives the message. This plugin is not enabled in the default ActiveMQ Classic configuration.
<timedSubscriptionRecoveryPolicy>
This implementation of {@link SubscriptionRecoveryPolicy} will keep a timed buffer of messages around in memory and use that to recover new subscriptions.
<topic>
An ActiveMQ Classic Topic
<transportConnector>
<udpTraceBrokerPlugin>
A Broker interceptor which allows you to trace all operations to a UDP socket.
<usageCapacity>
Identify if a limit has been reached
<virtualDestinationInterceptor>
Implements Virtual Topics.
<virtualTopic>
Creates Virtual Topics using a prefix and postfix. The virtual destination creates a wildcard that is then used to look up all active queue subscriptions which match.
<vmCursor>
Pending messages held
<vmDurableCursor>
Pending
<vmQueueCursor>
Pending messages
<xaConnectionFactory>
A Spring enhanced XA connection factory which will automatically use the Spring bean name as the clientIDPrefix property so that connections created have client IDs related to your Spring.xml file for easier comprehension from JMX.