= ActiveMQResourceAdapter Configuration
:index-group: ActiveMQ
:jbake-date: 2018-12-05
:jbake-type: page
:jbake-status: published


A ActiveMQResourceAdapter can be declared via xml in the
`<tomee-home>/conf/tomee.xml` file or in a `WEB-INF/resources.xml` file
using a declaration like the following. All properties in the element
body are optional.

[source,xml]
----
<Resource id="myActiveMQResourceAdapter" type="ActiveMQResourceAdapter">
    brokerXmlConfig = broker:(tcp://localhost:61616)?useJmx=false
    dataSource = Default Unmanaged JDBC Database
    serverUrl = vm://localhost?waitForStart=20000&async=true
    startupTimeout = 10 seconds
</Resource>
----

Alternatively, a ActiveMQResourceAdapter can be declared via properties
in the `<tomee-home>/conf/system.properties` file or via Java
VirtualMachine `-D` properties. The properties can also be used when
embedding TomEE via the `jakarta.ejb.embeddable.EJBContainer` API or
`InitialContext`

[source,properties]
----
myActiveMQResourceAdapter = new://Resource?type=ActiveMQResourceAdapter
myActiveMQResourceAdapter.brokerXmlConfig = broker:(tcp://localhost:61616)?useJmx=false
myActiveMQResourceAdapter.dataSource = Default Unmanaged JDBC Database
myActiveMQResourceAdapter.serverUrl = vm://localhost?waitForStart=20000&async=true
myActiveMQResourceAdapter.startupTimeout = 10 seconds
----

Properties and xml can be mixed. Properties will override the xml
allowing for easy configuration change without the need for $\{} style
variable substitution. Properties are not case-sensitive. If a property
is specified that is not supported by the declared
ActiveMQResourceAdapter a warning will be logged. If a
ActiveMQResourceAdapter is needed by the application and one is not
declared, TomEE will create one dynamically using default settings.
Multiple ActiveMQResourceAdapter declarations are allowed.

== Supported Properties

[.table.table-bordered,options="header"]
|===
|Property|Type|Default|Description

|brokerXmlConfig

|String

|`broker:(tcp://localhost:61616)?useJmx=false`

|Broker configuration URI as defined by ActiveMQ see
http://activemq.apache.org/broker-configuration-uri.html BrokerXmlConfig
xbean:file:conf/activemq.xml - Requires xbean-spring.jar and
dependencies

|dataSource

|String

|Default Unmanaged JDBC Database

|DataSource for persistence messages

|serverUrl

|java.net.URI

|`vm://localhost?waitForStart=20000&async=true`

|Broker address

|startupTimeout

|time

|10 seconds

|How long to wait for broker startup
|===