modifySIBMediation 指令

使用 modifySIBMediation 指令來變更調解的內容。

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

[IBM i][IBM i]從 Qshell 執行 wsadmin Scripting 用戶端

服務整合匯流排指令有指令行說明:
  • 如需 Jython 中可用的服務整合匯流排指令清單,以及每個指令的簡要說明,請在 wsadmin 提示下,輸入下列指令:

    print AdminTask.help('SIBAdminCommands')

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

    print AdminTask.help('command_name')

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

AdminConfig.save()

用途

這個指令會變更調解的內容。

目標物件

調解。

必要參數

-bus 匯流排名稱
要在其中建立調解的服務整合匯流排名稱。 您可以使用 listSIBuses 指令列出現有匯流排的名稱。
-mediationName 媒體名稱
用來識別這項調解以進行管理的名稱。

條件式參數

無。

選用參數

-description 文字
調解用來進行管理的選用說明。
-handlerListName
部署調解時所定義的管理程式清單名稱。
-globalTransaction TRUE | FALSE
是否啟動所處理的每則訊息的廣域交易。
FALSE
對每一筆處理的訊息啟動區域交易。 您只需要針對存取其他資源管理程式 (例如資料庫) 或與需要廣域交易的 Enterprise Bean 互動的調解,選取這個選項。
TRUE
對每一筆處理的訊息啟動廣域交易。
-allowConcurrentMediation TRUE | FALSE
選取此選項(將它設為 true),將調解同時套用在多則訊息上。 不保留訊息次序。 預設選項是 false。
TRUE
將調解同時套用到多則訊息上,並保留訊息排序。
FALSE
將調解一次套用到一則訊息。 如果要確保訊息排序會被保留,這個設定是必要的。
-selector text
控制哪些訊息要傳送給調解。 如果訊息符合選取器文字字串所定義的規則,就會將調解套用在訊息上。

如果訊息不符合選取器字串所定義的規則,則不會調解訊息。 如果訊息同時包含選取器和鑑別器,它必須符合要調解的訊息的這兩個規則。 如果選取器或鑑別器規則不符合,就不會調解訊息。

-discriminator text
鑑別器

請比較這個內容和選取器內容。 選取器指定的規則會檢查訊息的標頭和內容,鑑別器則會檢查訊息的主題。 如果訊息同時包含選取器和鑑別器,它必須符合要調解的訊息的這兩個規則。 如果選取器或鑑別器規則不符合,就不會調解訊息。

範例

  • 使用 Jython:
    wsadmin>AdminTask.showSIBMediation("-bus abus -mediationName switchMed")
    {uuid 39588C4821BB046E}
    {selector {}}
    {contextInfo {}}
    {discriminator {}}
    {allowConcurrentMediation false}
    {globalTransaction false}
    {mediationName switchMed}
    {handlerListName switchHandler}
    {description {}}
    
    wsadmin>AdminTask.modifySIBMediation(["-bus", "abus", 
     "-mediationName", "switchMed",
     "-selector", ["JMSXDeliveryCount > 1000"]] )
    
    wsadmin>AdminTask.showSIBMediation("-bus abus 
    -mediationName switchMed")
    {uuid 39588C4821BB046E}
    {selector {JMSXDeliveryCount > 1000}}
    {contextInfo {}}
    {discriminator {}}
    {allowConcurrentMediation false}
    {globalTransaction false}
    {mediationName switchMed}
    {handlerListName switchHandler}
    {description {}}
  • 使用 Jacl:
    wsadmin>$AdminTask showSIBMediation {-bus abus -mediationName switchMed}
    {uuid 39588C4821BB046E}
    {selector {}}
    {contextInfo {}}
    {discriminator {}}
    {allowConcurrentMediation false}
    {globalTransaction false}
    {mediationName switchMed}
    {handlerListName switchHandler}
    {description {}}
    
    wsadmin>$AdminTask modifySIBMediation {-bus abus -mediationName switchMed
     -selector {JMSXDeliveryCount > 1000}}
    
    wsadmin>$AdminTask showSIBMediation {-bus abus -mediationName switchMed}
    {uuid 39588C4821BB046E}
    {selector {JMSXDeliveryCount > 1000}}
    {contextInfo {}}
    {discriminator {}}
    {allowConcurrentMediation false}
    {globalTransaction false}
    {mediationName switchMed}
    {handlerListName switchHandler}
    {description {}}