createWMQTopic 指令

請利用 createWMQTopic 指令來建立特定範圍之 WebSphere® MQ 傳訊提供者的 JMS 主題目的地。

如果要執行這個指令,請使用 wsadmin Scripting 用戶端的 AdminTask 物件。

[IBM i]wsadmin Scripting 用戶端是從 Qshell 執行的。 如需相關資訊,請參閱配置 Qshell 以執行產品 Script 的相關主題。

只有在搭配 WebSphere Application Server 第 7 版以及更新版本的應用程式伺服器時,這個指令才有效。 請勿搭配較舊的版本來使用它。

如需可用 IBM® MQ 傳訊提供者管理指令的清單,以及每一個指令的簡要說明,請在 wsadmin 提示下輸入下列指令:

print AdminTask.help('WMQAdminCommands')

如需給定指令的概觀說明,請在 wsadmin 提示下,輸入下列指令:

print AdminTask.help('command_name')

使用指令之後,儲存對主要配置所做的變更。 例如,使用下列指令:

AdminConfig.save()

用途

請利用 createWMQTopic 指令來建立特定範圍的 WebSphere MQ 傳訊提供者主題類型目的地。

在下列任一情況下,您無法建立 WebSphere MQ 傳訊提供者主題類型目的地:
  • 存在於相同範圍內同名的 WebSphere MQ 傳訊提供者主題類型目的地。
  • JNDI 名稱與 WebSphere Application Server JNDI 中的另一個項目衝突。

目標物件

要建立 WebSphere MQ 傳訊提供者主題類型目的地的 WebSphere MQ 傳訊提供者範圍。

必要參數

-name
指派給這個 WebSphere MQ 傳訊提供者主題類型目的地的管理名稱。
-jndiName
用來將此物件連結至 WebSphere Application Server JNDI 的名稱。
-topicName
使用此目的地定義時,從中接收發佈資訊或將發佈資訊傳送至其中的 WebSphere MQ 主題名稱。

選用參數

-description
指派給主題類型目的地的管理說明。
-persistence
此參數決定用來儲存傳送至此目的地之訊息的持續性層次。
請輸入下列其中一個區分大小寫的值:
  • APP
  • TDEF
  • PERS
  • NON
  • HIGHT

APP 是預設值。

-priority
指派給送往這個目的地之訊息的優先順序層次。
請輸入下列其中一值:
  • APP
    附註: (APP 區分大小寫)。
  • QDEF
    附註: (QDEF 區分大小寫)。
  • <A positive integer in the range 0 to 9 (inclusive)>

預設值是 APP

-expiry
傳送至這個目的地的訊息到期並根據其處置選項來處理的時間長度。
請輸入下列其中一值:
  • APP
    附註: (APP 區分大小寫)。
  • UNLIM
    附註: (UNLIM 區分大小寫)。
  • <Any positive integer>

預設值是 APP

-ccsid
編碼字集 ID (CCSID)。

這個參數的值必須是正整數或空白。 如需詳細資料,請參閱 WebSphere MQ 傳訊提供者佇列和主題進階內容設定

預設值是 1208

-useNativeEncoding
這個參數指定是否使用原生編碼。 它可以採用 truefalse 值。

如果設為 true,則會忽略 -integerEncoding-decimalEncoding-floatingPointEncoding 屬性的值。

如果設為 false,則編碼由 -integerEncoding-decimalEncoding-floatingPointEncoding 屬性指定。

-integerEncoding
此佇列的整數編碼設定。

請輸入下列其中一個區分大小寫的值:NormalReversed

Normal 是預設值。

-decimalEncoding
此佇列的十進位編碼設定。

請輸入下列其中一個區分大小寫的值:NormalReversed

預設值是 Normal

-floatingPointEncoding
此佇列的浮點數編碼設定。

請輸入下列其中一個區分大小寫的值:IEEENormalIEEEReversedz/OS

預設值是 IEEENormal

-useRFH2
此參數決定 RFH 第 2 版標頭是否附加至傳送至此目的地 (也稱為 targetClient) 的訊息。

輸入下列其中一個區分大小寫的值: truefalse (分別相等於 JMS 或 MQ targetClient)。

預設值為 true (JMS targetClient)。

-sendAsync
此參數決定訊息是否可以傳送至這個目的地,而不需要佇列管理程式確認它們已到達。

輸入下列其中一個區分大小寫的值: YESNOTDEF

預設值為 TDEF

-readAhead
這個參數決定能否先讀和快取非持續性消費端的訊息。

輸入下列其中一個區分大小寫的值: YESNOTDEF

預設值為 TDEF

-readAheadClose
此內容決定當您關閉訊息消費者時所發生的行為,該訊息消費者使用訊息接聽器從 readAhead 參數設為 True的目的地非同步接收訊息。

當指定 deliverAll 值時,在您關閉消費者之前,會先遞送所有先讀訊息。

當指定 deliverCurrent 值時,在您關閉消費者之前,只會遞送進行中訊息。

預設值是 deliverCurrent

-wildcardFormat
這個參數決定哪些字元集解譯為主題萬用字元。

有效值是 TopicChar

預設值是 Topic

-brokerDurSubQueue
定義給佇列管理程式的佇列名稱,連線消費者會從中接收不可延續訂閱訊息。

此參數的值必須是空白或有效的佇列名稱。

預設值為 SYSTEM.JMS.D.SUBSCRIBER.QUEUE

-brokerCCDurSubQueue
定義給佇列管理程式的佇列名稱,連線消費者會從中接收可延續訂閱訊息。

此參數的值必須是空白或有效的佇列名稱。

預設值為 SYSTEM.JMS.D.CC.SUBSCRIBER.QUEUE

-brokerPubQueue
發佈訊息傳送至其中的佇列名稱 (定義給佇列管理程式)。

此參數的值必須是空白或有效的佇列名稱。

預設值為 SYSTEM.BROKER.DEFAULT.STREAM

-brokerPubQmgr
分配管理系統執行所在的佇列管理程式名稱。

此參數的值必須是有效的佇列管理程式名稱或保留空白。

沒有預設值。

-brokerVersion
此參數決定發佈/訂閱作業所需的功能層次。

這個參數的值必須是 V1V2

預設值是 V1

-customProperties
這個參數指定要傳遞給 WebSphere MQ 傳訊提供者主題類型目的地實作的自訂內容。 一般而言,自訂內容用來設定主題類型目的地的屬性,這些屬性不是透過 WebSphere 管理介面直接支援。
每一個自訂內容都是以名稱與值表格步驟參數所指定。 由於這些都是表格步驟,因此這兩個參數的順序都是固定的,一定是先指定名稱,再指定值:
  • 在 Jython 中: [name value]
  • 在 Jacl 中: {name value}
附註: 在下列範例中,以 wsadmin> 開頭的程式碼區塊會顯示使用者所輸入的程式碼。 開頭不是 wsadmin> 的程式行,顯示主控台所傳回的程式碼。
下列範例會建立指定最少參數的主題定義。
  • 使用 Jython:
    wsadmin>AdminConfig.getid("/Node:9994GKCNode01")
    MQTopic_1098737234986)
     9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1)
    wsadmin>AdminTask.createWMQTopic("9994GKCNode01(cells/9994GKCNode01Cell/
    nodes/9994GKCNode01|node.xml#Node_1)", ["-name T1 -jndiName jms/topic/t1
     -topicName myTopic"])
    T1(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml#
  • 使用 Jacl:
    wsadmin>$AdminConfig getid /Node:9994GKCNode01
    9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1)
    wsadmin>$AdminTask createWMQTopic 
    9994GKCNode01(cells/9994GKCNode01Cell/nodes/9994GKCNode01|node.xml#Node_1) 
    {-name T1 -jndiName jms/topic/t1 -topicName myTopic}
    T1(cells/9994GKCNode01Cell/nodes/9994GKCNode01|resources.xml#
    MQTopic_1098737234986)