blob: 4ebe45432a769efd9c296384c45e887456288dc2 [file] [log] [blame]
Title: MessageDrivenContainer Configuration
A MessageDrivenContainer 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.
<Container id="myMessageDrivenContainer" type="MESSAGE">
activationSpecClass = org.apache.activemq.ra.ActiveMQActivationSpec
instanceLimit = 10
messageListenerInterface = javax.jms.MessageListener
resourceAdapter = Default JMS Resource Adapter
</Container>
Alternatively, a MessageDrivenContainer 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 `javax.ejb.embeddable.EJBContainer` API or `InitialContext`
myMessageDrivenContainer = new://Container?type=MESSAGE
myMessageDrivenContainer.activationSpecClass = org.apache.activemq.ra.ActiveMQActivationSpec
myMessageDrivenContainer.instanceLimit = 10
myMessageDrivenContainer.messageListenerInterface = javax.jms.MessageListener
myMessageDrivenContainer.resourceAdapter = Default JMS Resource Adapter
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 MessageDrivenContainer a warning will be logged. If a MessageDrivenContainer is needed by the application and one is not declared, TomEE will create one dynamically using default settings. Multiple MessageDrivenContainer declarations are allowed.
# Supported Properties
<table>
<tr>
<th>Property</th>
<th>Type</th>
<th>Default</th>
<th>Description</th>
</tr>
<tr>
<td>activationSpecClass</td>
<td>String</td>
<td>org.apache.activemq.ra.ActiveMQActivationSpec</td>
<td>
Specifies the activation spec class
</td>
</tr>
<tr>
<td>instanceLimit</td>
<td>int</td>
<td>10</td>
<td>
Specifies the maximum number of bean instances that are
allowed to exist for each MDB deployment.
</td>
</tr>
<tr>
<td>messageListenerInterface</td>
<td>String</td>
<td>javax.jms.MessageListener</td>
<td>
Specifies the message listener interface handled by this container
</td>
</tr>
<tr>
<td>resourceAdapter</td>
<td>String</td>
<td>Default&nbsp;JMS&nbsp;Resource&nbsp;Adapter</td>
<td>
The resource adapter delivers messages to the container
</td>
</tr>
</table>