Elements By Type

The org.apache.activemq.broker.TransportConnector Type Implementations

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 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 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 - 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 Queue
<topic> An ActiveMQ 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

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 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 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 Queue
<topic> An ActiveMQ 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 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 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 - 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 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 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 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

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 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 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 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 - 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 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 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 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 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.
© 2004-2011 The Apache Software Foundation.
Apache ActiveMQ, ActiveMQ, Apache, the Apache feather logo, and the Apache ActiveMQ project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.
Graphic Design By Hiram