第 17 章 JMS 資源介面特性參照
本章說明 Message QueueTM JMS 資源介面 (JMS RA) 的配置特性,可讓您透過標準 J2EE 連接器架構 (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 [標準 Enterprise 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 或空值。
您只能針對未處理作業事件的非長期主題訂閱使用 no-acknowledge 模式;如果將此設定用於已處理作業事件訂閱或長期訂閱,將無法啟動訂閱。
|
endpointExceptionRedeliveryAttempts
|
整數
|
6
|
當 MDB 在傳送訊息期間丟出異常時,要重新傳送訊息的次數
|
sendUndeliverableMsgsToDMQ
|
布林值
|
true
|
當 MDB 丟出執行階段異常而且嘗試重新傳送的次數超出 endpointExceptionRedeliveryAttempts 值時,是否將訊息放入停用的訊息佇列中?
如果是 false,Message Queue 代理程式會嘗試向任何有效的用戶 (包含此 MDB) 重新傳送訊息。
|