第 17 章 JMS 资源适配器属性参考
本章介绍 Message QueueTM JMS 资源适配器 (JMS Resource Adapter, JMS RA) 的配置属性,它可以通过标准 J2EE 连接器体系结构 (J2EE Connector Architecture, JCA) 将 Sun Java SystemTM Message Queue 和任何 J2EE 1.4 应用服务器集成。
插入应用服务器后,在该应用服务器中部署的应用程序即可使用 Message Queue 来发送和接收 JMS 消息。
Message Queue JMS 资源适配器通过以下三个 JavaBean 组件来公开其配置属性:
要设置这些组件的属性值,请使用应用服务器提供的用于配置和部署资源适配器及部署 MDB 的工具。
本章列出并描述了 Message Queue JMS 资源适配器的配置属性。
本章包含以下各节:
ResourceAdapter JavaBean
ResourceAdapter 配置用于配置默认 JMS 资源适配器行为。表 17–1 列出并描述了可用来配置此 JavaBean 的属性。
表 17–1 资源配置器属性
属性
|
类型
|
默认值
|
描述
|
addressList
|
字符串
|
mq://localhost:7676/jms
|
(必需)用于连接到 Message Queue 服务的消息服务地址
等效于 connectionURL (下栏);必须设置其中一种。
|
connectionURL
|
字符串
|
mq://localhost:7676/jms
|
用于连接到 Message Queue 服务的消息服务地址
等效于 addressList(上栏);必须设置其中一种。
|
userName
|
字符串
|
guest
|
(必需)用于连接到 Message Queue 服务的默认用户名
|
password
|
字符串
|
guest
|
(必需)用于连接到 Message Queue 服务的默认密码
|
addressListBehavior
|
字符串
|
PRIORITY
|
尝试连接到 Message Queue 服务的顺序:
PRIORITY:地址列表中指定的顺序
RANDOM:随机顺序
注 –
连接失败后的重新连接尝试从连接中断的代理开始,将依次尝试活动地址列表中的后续条目,而不管为该属性设置的值。
|
addressListIterations
|
整数
|
1
|
重复访问地址列表以尝试建立或重新建立连接的次数。
|
reconnectEnabled
|
布尔值
|
false
|
是否尝试重新建立断开的连接?
|
reconnectAttempts
|
整数
|
6
|
尝试重新连接到地址列表中每个地址的次数,超过该次数后,将移动到下一个地址
|
reconnectInterval
|
长整型
|
30000
|
两次重新连接尝试的时间间隔(以毫秒为单位)
|
ManagedConnectionFactory JavaBean
受管理连接工厂定义资源适配器为消息驱动 Bean 提供的连接。
表 17–2 显示了 ManagedConnectionFactory JavaBean 的属性;如果设置这些属性,它们将覆盖 ResourceAdapter JavaBean 对应的属性。
表 17–2 受管理连接工厂属性
属性
|
类型
|
默认值
|
描述
|
addressList
|
字符串
|
从 ResourceAdapter JavaBean 继承(请参见表 17–1)
|
连接到 Message Queue 服务的消息服务地址列表
|
userName
|
字符串
|
guest
|
(可选)连接到 Message Queue 服务的用户名
|
password
|
字符串
|
guest
|
(可选)连接到 Message Queue 服务的密码
|
clientID
|
字符串
|
无
|
用于连接到 Message Queue 服务的客户端标识符
|
addressListBehavior
|
字符串
|
PRIORITY
|
尝试连接到 Message Queue 服务的顺序:
PRIORITY:地址列表中指定的顺序
RANDOM:随机顺序
注 –
连接失败后的重新连接尝试从连接中断的代理开始,将依次尝试活动地址列表中的后续条目,而不管为该属性设置的值。
|
addressListIterations
|
整数
|
1
|
重复访问地址列表以尝试建立或重新建立连接的次数。
|
reconnectEnabled
|
布尔值
|
false
|
是否尝试重新建立断开的连接?
|
reconnectAttempts
|
整数
|
6
|
尝试重新连接到地址列表中每个地址的次数,超过该次数后,将移动到下一个地址。
|
reconnectInterval
|
长整型
|
30000
|
两次重新连接尝试的时间间隔(以毫秒为单位)
|
ActivationSpec JavaBean
表 17–3 显示了 ActivationSpec JavaBean 的配置属性。当应用服务器指示资源适配器激活消息端点并将消息端点与消息驱动 Bean 关联时,需要使用这些属性。
表 17–3 激活规范属性
属性
|
类型
|
默认值
|
描述
|
addressList [Message Queue JMS 资源适配器的特有属性。]
|
字符串
|
从 ResourceAdapter JavaBean 继承
|
(可选) 用于连接到 Message Queue 服务的消息服务地址
|
destination [标准的企业 JavaBean (EJB) 和 J2EE 连接器体系结构 (CA) 属性]
|
字符串
|
无
|
(必需) 使用消息的目的地的名称
对于 Message Queue 目的地受管理对象,该值必须为 destinationName 属性的值。
|
destinationType
|
字符串
|
无
|
(必需)destination 属性指定的目的地类型:
javax.jms.Queue:队列目的地
javax.jms.Topic:主题目的地
|
messageSelector
|
字符串
|
无
|
(可选) 用于对传送到使用方的消息进行过滤的消息选择器。
|
subscriptionName
|
字符串
|
无
|
用于长期订阅的名称
如果 subscriptionDurability 设置为 Durable ,则必须设置此属性。
|
subscriptionDurability
|
字符串
|
NonDurable
|
用于主题目的地使用方的长期性:
Durable:长期使用方
NonDurable:非长期使用方
只有当 destinationType 设置为 javax.jms.Topic 时,此属性才有效。对于非长期订阅,此属性是可选的;对于长期订阅,此属性是必需的。
如果设置为 Durable,则还必须设置 clientID 和 subscriptionName 属性。
|
clientId
|
字符串
|
无
|
用于连接到 Message Queue 服务的客户端 ID
如果 subscriptionDurability 设置为 Durable,则必须设置此属性。
|
acknowledgeMode
|
字符串
|
Auto-acknowledge
|
(可选)确认模式:
Auto-acknowledge:
Auto-acknowledge 模式
Dups-ok-acknowledge:
Dups-OK-acknowledge 模式
|
customAcknowledgeMode
|
字符串
|
无
|
用于 MDB 消息使用的确认模式
有效值是 No_acknowledge 或 null。
只能将 No_acknowledge 模式用于非事务、非长期的主题订阅;如果对事务订阅或长期订阅使用此设置,订阅激活将失败。
|
endpointExceptionRedeliveryAttempts
|
整数
|
6
|
消息传送期间当 MDB 抛出异常时,重新传送消息的次数
|
sendUndeliverableMsgsToDMQ
|
布尔值
|
true
|
当 MDB 抛出运行时环境异常且重新传送尝试次数超出 endpointExceptionRedeliveryAttempts 值时,是否将消息置于停用消息队列中?
如果为 false,Message Queue 代理将尝试将消息重新传送到任何有效的使用方,包括同一个 MDB。
|