Chapter 19 JMS Resource Adapter Property
Reference
This chapter describes the configuration properties
of the Message Queue JMS Resource Adapter (JMS RA), which enables you to integrate Sun JavaTM System Message Queue with
any J2EE 1.4 application server by means of the standard J2EE connector architecture
(JCA). When plugged into an application server, the Resource
Adapter allows applications deployed in that application server to use Message Queue to
send and receive JMS messages.
The Message Queue JMS Resource Adapter exposes its
configuration properties through three JavaBean components:
-
The ResourceAdapter JavaBean (ResourceAdapter JavaBean) affects the behavior of
the Resource Adapter as a whole.
-
The ManagedConnectionFactory JavaBean
(ManagedConnectionFactory JavaBean) affects
connections created by the Resource Adapter for use by message-driven beans (MDBs).
-
The ActivationSpec JavaBean (ActivationSpec JavaBean) affects message endpoints
that represent MDBs in their interactions with the messaging
system.
To set property values for these entities, you use the tools provided
by your application server for configuration and deployment of the Resource
Adapter and for deployment of MDBs.
This chapter lists and describes the configuration properties of the Message Queue JMS Resource Adapter. It contains the following sections:
ResourceAdapter JavaBean
The ResourceAdapter configuration configures the default JMS Resource
Adapter behavior. Table 19–1 lists
and describes the properties with which you can configure this JavaBean.
Table 19–1 Resource
Adapter Properties
Property
|
Type
|
Default Value
|
Description
|
addressList [Exactly one of these properties must be specified]
|
String
|
mq://localhost:7676/jms
|
Message service address for connecting to Message Queue service
Equivalent to connectionURL (below).
|
connectionURL
|
String
|
mq://localhost:7676/jms
|
Message service address for connecting to the Message Queue service
Equivalent to addressList(above).
|
brokerInstanceName
|
String
|
imqbroker
|
Name of broker instance
|
brokerPort
|
Integer
|
7676
|
Port number for connecting to broker
|
brokerBindAddress
|
String
|
Null
|
Address to which broker binds on host machine
If null, the broker will bind to all addresses on the host machine.
|
userName [Required]
|
String
|
guest
|
Default user name for connecting to Message Queue service
|
password
|
String
|
guest
|
Default password for connecting to Message Queue service
|
addressListBehavior
|
String
|
PRIORITY
|
Order in which to attempt connection to Message Queue service:
Note –
Reconnection attempts after a connection failure start
with the broker whose connection failed and proceed sequentially through the
address list, regardless of the value set for this property.
|
addressListIterations
|
Integer
|
1
|
Number of times to iterate through address list attempting to establish
or reestablish a connection
|
reconnectEnabled
|
Boolean
|
false
|
Attempt to reestablish a lost connection?
|
reconnectAttempts
|
Integer
|
6
|
Number of times to attempt reconnection to each address in address
list before moving on to next
|
reconnectInterval
|
Long integer
|
30000
|
Interval, in milliseconds, between reconnection attempts
|
brokerEnableHA
|
Boolean
|
false
|
Enable high availability?
|
clusterID
|
String
|
None
|
Cluster identifier
If specified, only brokers with the same cluster identifier can be clustered
together. In the event of broker failure, client connections will fail over
only to brokers with the same cluster identifier as the original broker. If
not specified, client connections can fail over to any other broker with an
unspecified cluster identifier.
For standalone brokers (those not belonging to a cluster), this property
is ignored.
The identifier may contain only alphabetic letters (A–Z, a–z), numeric digits
(0–9), and the underscore character
(_).
|
brokerID
|
String
|
None
|
Broker identifier
For brokers using a JDBC-based persistent data store,
this string is appended to the names of all database tables to make them unique
in the case where more than one broker instance is using the same database.
For brokers using a file-based data store, this property is ignored.
In a high-availability cluster, each broker must have a unique broker
identifier.
The identifier may contain only alphabetic letters (A–Z, a–z), numeric digits
(0–9), and the underscore character
(_).
|
ManagedConnectionFactory JavaBean
A managed connection factory defines the
connections that the Resource Adapter provides to a message-driven bean. Table 19–2 shows the properties of the ManagedConnectionFactory JavaBean; if set, these properties override
the corresponding properties of the ResourceAdapter JavaBean.
Table 19–2 Managed
Connection Factory Properties
Property
|
Type
|
Default Value
|
Description
|
addressList
|
String
|
Inherited from ResourceAdapter JavaBean (see Table 19–1)
|
List of message service addresses for connecting to Message Queue service
|
userName [Optional]
|
String
|
guest
|
User name for connecting to Message Queue service
|
password
|
String
|
guest
|
Password for connecting to Message Queue service
|
clientID
|
String
|
None
|
Client identifier for connections to Message Queue service
|
addressListBehavior
|
String
|
PRIORITY
|
Order in which to attempt connection to Message Queue service:
Note –
Reconnection attempts after a connection failure start
with the broker whose connection failed and proceed sequentially through the
address list, regardless of the value set for this property.
|
addressListIterations
|
Integer
|
1
|
Number of times to iterate through address list attempting to establish
or reestablish a connection
|
reconnectEnabled
|
Boolean
|
false
|
Attempt to reestablish a lost connection?
|
reconnectAttempts
|
Integer
|
6
|
Number of times to attempt reconnection to each address in address list
before moving on to next
|
reconnectInterval
|
Long integer
|
30000
|
Interval, in milliseconds, between reconnection attempts
|
ActivationSpec JavaBean
Table 19–3 shows the configurable properties
of the ActivationSpec JavaBean. These properties are used
by the application server when instructing the Resource Adapter to activate
a message endpoint and associate it with a message-driven bean.
Table 19–3 ActivationSpec
Properties
Property
|
Type
|
Default Value
|
Description
|
addressList [Optional] , [Property specific to Message Queue JMS Resource Adapter]
|
String
|
Inherited from ResourceAdapter JavaBean
|
Message service address for connecting to Message Queue service
|
destination [Standard Enterprise JavaBean (EJB) and J2EE Connector
Architecture (CA) property]
|
String
|
None
|
Name of destination from which to consume messages
The value must be that of the destinationName property
for a Message Queue destination administered object.
|
destinationType
|
String
|
None
|
Type of destination specified by destination property:
javax.jms.Queue: Queue destination
javax.jms.Topic: Topic destination
|
messageSelector,
|
String
|
None
|
Message selector for filtering messages delivered to consumer
|
subscriptionName
|
String
|
None
|
Name for durable subscriptions
This property must be set if subscriptionDurability is set to Durable.
|
subscriptionDurability
|
String
|
NonDurable
|
Durability of consumer for topic destination:
Durable: Durable consumer
NonDurable: Nondurable consumer
This property is valid only if destinationType is
set to javax.jms.Topic, and is optional for nondurable
subscriptions and required for durable ones. If set to Durable,
the clientID and subscriptionName properties must also be set.
|
clientId
|
String
|
None
|
Client ID for connections to Message Queue service
This property must be set if subscriptionDurability is
set to Durable.
|
acknowledgeMode,
|
String
|
Auto-acknowledge
|
Acknowledgment mode:
Auto-acknowledge: Auto-acknowledge mode
Dups-ok-acknowledge: Dups-OK-acknowledge
mode
|
customAcknowledgeMode
|
String
|
None
|
Acknowledgment mode for MDB message consumption
Valid values are No_acknowledge or null.
You can use no-acknowledge mode only for a nontransacted, nondurable
topic subscription; if you use this setting with a transacted subscription
or a durable subscription, subscription activation will fail.
|
endpointExceptionRedeliveryAttempts
|
Integer
|
6
|
Number of times to redeliver a message when MDB throws
an exception during message delivery
|
sendUndeliverableMsgsToDMQ
|
Boolean
|
true
|
Place message in dead message queue when MDB throws
a runtime exception and number of redelivery attempts exceeds the value of endpointExceptionRedeliveryAttempts?
If false, the Message Queue broker will attempt redelivery
of the message to any valid consumer, including the same MDB.
|