Contains the configuration for the following topics:
Apache ActiveMQ Artemis core is JMS-agnostic. It does not have any concept of a JMS topic. A JMS topic is implemented in core as an address (the topic name) with zero or more queues bound to it. Each queue bound to that address represents a topic subscription. Likewise, a JMS queue is implemented as an address (the JMS queue name) with one single queue bound to it which represents the JMS queue.
By convention, all JMS queues map to core queues where the core queue name has the string "jms.queue." prepended to it. E.g. the JMS queue with the name "orders.europe" would map to the core queue with the name "jms.queue.orders.europe". The address at which the core queue is bound is also given by the core queue name.
For JMS topics the address at which the queues that represent the subscriptions are bound is given by prepending the string "jms.topic." to the name of the JMS topic. E.g. the JMS topic with name "news.europe" would map to the core address "jms.topic.news.europe"
JMS destinations, along with JMS connection factories, are JMS administrative objects. Destinations are used by JMS clients for both producing and consuming messages. The destination allows the JMS client to specify the target when it produces messages and the source of messages when consuming messages. When using a publish-subscribe pattern, destinations are referred to as topics. When using a point-to-point pattern, destinations are referred to as queues.
Applications may use many different JMS destinations which are configured on the server side and usually accessed via JNDI.
Security settings are used to configure security around specific destinations. This is done by adding a security constraint using the security-setting configuration element. ${build.shortName} messaging comes with a
security-setting
configured by default.
The security-setting option makes use of wildcards to handle which destinations to apply the security constraint. The value of a single
#
patterm will match any address. For more information on using wildcards in security constraints, see
Role Based Security for Addresses.
The messaging-activemq subsystem has several configurable options which control aspects of how and when a message is delivered, how many attempts should be made, and when the message expires. These configuration options all exist within the
<address-setting>
configuration element. You can have ${build.shortName} apply a single
<address-setting>
to multiple destinations by using a wildcard syntax.
For more information on using wildcards in address settings, see Wildcard Syntax.
Diverts are objects configured in ${build.shortName} messaging that help in diverting messages from one address to another. Diverts can be classified into the following types:
A divert will only divert a message to an address on the same server. If you want to divert to an address on a different server, a common pattern would be to divert to a local store-and-forward queue, then set up a api that consumes from that queue and forwards to an address on a different server.