您可以在參照和服務上更新「服務元件架構 (SCA)」組合的 Java™ 訊息服務 (JMS) 連結。 使用 Script 來編輯商業層次應用程式中的組合單元。 這些 Script 會編輯 binding.jms 元素的資源和回應資源設定。
開始之前
使用現有 JMS 資源的 SCA 組合必須是商業層次應用程式中的組合單元。 如果要編輯參照上 JMS 連結的設定,組合必須已在 JMS 連結中定義參照。 同樣地,如果要編輯服務上 JMS 連結的設定,組合必須已在 JMS 連結中定義服務。
關於這項作業
部署使用 JMS 連結的 SCA 組合之後,您可以編輯指定「Java 命名和目錄介面 (JNDI)」名稱的 JMS 連結資源或回應資源設定。
表 1. editCompUnit 選用參數 的可編輯設定。 執行 editCompUnit 指令並指定可讓您編輯 JMS 連結資源的參數。
| editCompUnit 參數 |
可編輯設定 |
| -ReferenceJMSBinding資源 |
destinationJNDIName
connectionFactoryJNDIName
|
| -ServiceJMSBinding資源 |
destinationJNDIName
activationSpecJNDIName
|
| -ReferenceJMSBindingResponseResources |
responseDestinationJNDIName
responseConnectionFactoryJNDIName
|
| -ServiceJMSBindingResponseResources |
responseDestinationJNDIName
responseConnectionFactoryJNDIName
|
editCompUnit 指令所使用的 JMS 資源必須存在。 當您編輯組合單元時,該產品不會動態建立 JMS 資源。
程序
- 啟動 wsadmin Scripting 工具。
- 在 SCA 組合單元的參照資源上編輯 JMS 連結。
搭配使用 editCompUnit 指令與-ReferenceJMSBindingResources 選用參數,以編輯 JMS 連結中所定義 Resource 元素的設定。 這個指令有三個參數:-blaID、-cuID和-ReferenceJMSBindingResources ,所有類型都是 String。
使用 Jython:
AdminTask.editCompUnit('[-blaID myBLA -cuID myCompUnit -ReferenceJMSBindingResources
[[componentName/referenceName destinationJNDIName connectionFactoryJNDIName
.* .* .* .* .* .* .*]]]')
使用 Jacl:
$AdminTask editCompUnit {-blaID myBLA -cuID myCompUnit -ReferenceJMSBindingResources
componentName/referenceName destinationJNDIName connectionFactoryJNDIName
.* .* .* .* .* .* .*}
表 2. editCompUnit with-ReferenceJMSBindingResources 指令元素 。 執行 editCompUnit 指令搭配-ReferenceJMSBinding資源以編輯 JMS 連結參照資源。
| 變數 |
說明 |
$ |
是 Jacl 運算子,以便將變數名稱換成其值 |
AdminTask |
是使用 wsadmin 工具執行管理指令的物件 |
editCompUnit |
是 AdminTask 指令 |
myBLA |
是 SCA 商業層次應用程式的配置 ID |
myCompUnit |
是 SCA 組合單元的配置 ID |
-ReferenceJMSBindingResources |
是 editCompUnit 選用指令參數,用於更新 JMS 連結中定義的參照資源 |
componentName/referenceName |
是 JMS 連結中定義的參照名稱 請使用格式元件名稱、正斜線 (/) ,然後參照名稱。
|
destinationJNDIName |
是 JMS 連結所連接之目的地的 JNDI 名稱 |
connectionFactoryJNDIName |
是 JMS 連結用來處理要求訊息之 Connection Factory 的 JNDI 名稱 |
.* |
是連結設定的預設值的萬用字元字串。 針對您無法編輯的設定指定 .* 。 |
- 編輯 SCA 組合單元的服務資源上的 JMS 連結。
搭配使用 editCompUnit 指令與-ServiceJMSBindingResources 選用參數,以編輯 JMS 連結中所定義 Resource 元素的設定。 指令有三個參數:-blaID、-cuID和-ServiceJMSBindingResources ,所有類型都是「字串」。
使用 Jython:
AdminTask.editCompUnit('[-blaID myBLA -cuID myCompUnit -ServiceJMSBindingResources
[[componentName/serviceName destinationJNDIName activationSpecJNDIName
.* .* .* .* .* .* .*]]]')
使用 Jacl:
$AdminTask editCompUnit {-blaID myBLA -cuID myCompUnit -ServiceJMSBindingResources
componentName/serviceName destinationJNDIName activationSpecJNDIName
.* .* .* .* .* .* .*}
表 3. editCompUnit with-ServiceJMSBindingResources 指令元素 。 執行 editCompUnit 指令搭配-ServiceJMSBinding資源以編輯 JMS 連結服務資源。
| 變數 |
說明 |
$ |
是 Jacl 運算子,以便將變數名稱換成其值 |
AdminTask |
是使用 wsadmin 工具執行管理指令的物件 |
editCompUnit |
是 AdminTask 指令 |
myBLA |
是 SCA 商業層次應用程式的配置 ID |
myCompUnit |
是 SCA 組合單元的配置 ID |
-ServiceJMSBindingResources |
是 editCompUnit 選用指令參數,用於更新 JMS 連結中定義的服務資源 |
componentName/serviceName |
是 JMS 連結中定義的服務名稱 請使用格式元件名稱、正斜線 (/) ,然後使用服務名稱。
|
destinationJNDIName |
是 JMS 連結所連接之目的地的 JNDI 名稱 |
activationSpecJNDIName |
是 JMS 連結用來連接至 JMS 目的地以處理要求訊息之啟動規格的 JNDI 名稱 |
.* |
是連結設定的預設值的萬用字元字串。 針對您無法編輯的設定指定 .* 。 |
- 在 SCA 組合單元的參照回應資源上編輯 JMS 連結。
搭配使用 editCompUnit 指令與-ReferenceJMSBindingResponseResources 選用參數,以編輯 JMS 連結中所定義 Resource 元素的設定。 指令有三個參數:-blaID、-cuID和-ReferenceJMSBindingResponseResources,所有類型都是「字串」。
使用 Jython:
AdminTask.editCompUnit('[-blaID myBLA -cuID myCompUnit -ReferenceJMSBindingResponseResources
[[componentName/referenceName responseDestinationJNDIName responseConnectionFactoryJNDIName
.* .* .* .* .* .* .*]]]')
使用 Jacl:
$AdminTask editCompUnit {-blaID myBLA -cuID myCompUnit -ReferenceJMSBindingResponseResources
componentName/referenceName responseDestinationJNDIName responseConnectionFactoryJNDIName
.* .* .* .* .* .* .*}
表 4. editCompUnit with-ReferenceJMSBindingResponseResources 指令元素 。 執行 editCompUnit 指令並搭配-ReferenceJMSBindingResponseResources 以編輯 JMS 連結參照回應資源。
| 變數 |
說明 |
$ |
是 Jacl 運算子,以便將變數名稱換成其值 |
AdminTask |
是使用 wsadmin 工具執行管理指令的物件 |
editCompUnit |
是 AdminTask 指令 |
myBLA |
是 SCA 商業層次應用程式的配置 ID |
myCompUnit |
是 SCA 組合單元的配置 ID |
-ReferenceJMSBindingResponseResources |
是 editCompUnit 選用指令參數,用於更新 JMS 連結中定義的參照回應資源 |
componentName/referenceName |
是 JMS 連結中定義的參照名稱 請使用格式元件名稱、正斜線 (/) ,然後參照名稱。
|
responseDestinationJNDIName |
是 JMS 連結所連接之目的地的 JNDI 名稱 |
responseConnectionFactoryJNDIName |
是 JMS 連結用來處理要求訊息之 Connection Factory 的 JNDI 名稱 |
.* |
是連結設定的預設值的萬用字元字串。 針對您無法編輯的設定指定 .* 。 |
- 在 SCA 組合單元的服務回應資源上編輯 JMS 連結。
搭配使用 editCompUnit 指令與-ServiceJMSBindingResponseResources 選用參數,以編輯 JMS 連結中所定義 Resource 元素的設定。 指令有三個參數:-blaID、-cuID和-ServiceJMSBindingResponseResources,所有類型都是 String。
使用 Jython:
AdminTask.editCompUnit('[-blaID myBLA -cuID myCompUnit -ServiceJMSBindingResponseResources
[[componentName/serviceName responseDestinationJNDIName responseConnectionFactoryJNDIName
.* .* .* .* .* .* .*]]]')
使用 Jacl:
$AdminTask editCompUnit {-blaID myBLA -cuID myCompUnit -ServiceJMSBindingResponseResources
componentName/serviceName responseDestinationJNDIName responseConnectionFactoryJNDIName
.* .* .* .* .* .* .*}
表 5. editCompUnit with-ServiceJMSBindingResponseResources 指令元素 。 執行 editCompUnit 指令並搭配-ServiceJMSBindingResponseResources 以編輯 JMS 連結服務回應資源。
| 變數 |
說明 |
$ |
是 Jacl 運算子,以便將變數名稱換成其值 |
AdminTask |
是使用 wsadmin 工具執行管理指令的物件 |
editCompUnit |
是 AdminTask 指令 |
myBLA |
是 SCA 商業層次應用程式的配置 ID |
myCompUnit |
是 SCA 組合單元的配置 ID |
-ServiceJMSBindingResponseResources |
是 editCompUnit 選用指令參數,用於更新 JMS 連結中定義的服務回應資源 |
serviceName |
是 JMS 連結中定義的服務名稱 請使用格式元件名稱、正斜線 (/) ,然後使用服務名稱。
|
responseDestinationJNDIName |
是 JMS 連結所連接之目的地的 JNDI 名稱 |
responseConnectionFactoryJNDIName |
是 JMS 連結用來處理要求訊息之 Connection Factory 的 JNDI 名稱 |
.* |
是連結設定的預設值的萬用字元字串。 針對您無法編輯的設定指定 .* 。 |
結果
在 editCompUnit 指令執行之後,會顯示 SCA 組合的 JMS 連結中所定義參照或服務的相關資訊。
範例
假設 MyJMSComposite 組合單元安裝在 myBLA 商業層次應用程式中。 執行 editCompUnit 指令,以更新 JMS 連結資源或回應資源。
若要指定設定的預設值,請使用 .*。 針對步驟中的每一個屬性併入 .* 作為位置保留元。 例如,步驟是 -ReferenceJMSBindingResources[[...]]。 步驟的第一個屬性是識別資料列的 componentName/service-referenceName 。 步驟的第二個屬性是可編輯的目的地 JNDI 名稱。 步驟的第三個屬性是可編輯 Connection Factory JNDI 名稱或啟動規格 JNDI 名稱。 除非您想要指定值,否則其餘七個屬性是 .* 值。
- 使用 Jython 更新參照資源:
AdminTask.editCompUnit('[-blaID WebSphere:blaname=myBLA -cuID WebSphere:cuname=MyJMSComposite
-ReferenceJMSBindingResources [[MyJMSBinding/myJMSService myDest myCF .* .* .* .* .* .* .*]]]')
- 使用 Jython 更新服務資源:
AdminTask.editCompUnit('[-blaID WebSphere:blaname=myBLA -cuID WebSphere:cuname=MyJMSComposite
-ServiceJMSBindingResources [[MyJMSBinding/myJMSService myDest myAS .* .* .* .* .* .* .*]]]')
- 使用 Jython 更新參照回應資源:
AdminTask.editCompUnit('[-blaID WebSphere:blaname=myBLA -cuID WebSphere:cuname=MyJMSComposite
-ReferenceJMSBindingResponseResources [[MyJMSBinding/myJMSService .* myCF .* .* .* .* .* .* .*]]]')
- 使用 Jython 更新服務回應資源:
AdminTask.editCompUnit('[-blaID WebSphere:blaname=myBLA -cuID WebSphere:cuname=MyJMSComposite
-ServiceJMSBindingResponseResources [[MyJMSBinding/myJMSService .* myCF .* .* .* .* .* .* .*]]]')
執行 editCompUnit 指令會更新元素的設定,並傳回組合單元的配置 ID; 例如 WebSphere:cuname=MyJMSComposite。
下一步
檢視 JMS 連結參照和服務,以確保連結設定符合預期。