IBM MQ 服務定義內容
您可以在建立新的服務定義或是在編輯現有服務定義時,設定服務定義的內容和屬性。
某些屬性只有當服務定義屬於某種特定連結類型或是訊息交換型樣時才適用。請遵循下列鏈結,檢視服務定義個別內容頁面的內容:
每一個屬性都有關於您何時可能需要配置該屬性的簡要說明。
「一般」頁面
下表列出您可以在「服務定義內容」對話框的一般頁面中設定的屬性。
屬性 | 說明 |
---|---|
名稱空間 | 指定服務的名稱空間。其已指定暫時預設值。 |
名稱 | 新「服務定義」的唯一名稱。服務定義名稱不會區分大小寫,但是會保留大小寫混合格式的服務定義名稱。 |
訊息交換型樣 | 「訊息交換型樣」說明在呼叫服務期間,傳送和接收訊息的方向。有兩個可能的選項:
|
連結類型 | 指定 IBM® MQ 服務定義規格的版本。 |
SOAP 版本 | 只適用於 SOAP 連結類型。指定 SOAP 內容的類型和版本。有兩個可能的選項:
|
註解 | 指定註解來標註 WSDL 檔中的服務。 |
「作業」頁面
下表列出您可以在「服務定義內容」對話框的作業頁面中設定的屬性。每一個服務定義都只有一項作業。
屬性 | 說明 |
---|---|
作業名稱 | 指定作業的名稱。這個內容必須有值,才能建立服務定義。 |
動作 | 供服務提供者用來分派服務要求。例如:允許使用單一目的地來部署多個服務,讓服務提供者能夠適當分派送達目的地的要求。 如果連結類型是 MQ,動作會指定 targetAction。 如果連結類型是 SOAP/MQ,動作會指定 SOAPAction。 |
註解 | 指定註解來標註 WSDL 檔中的作業。 |
「輸入目的地」頁面
下表列出您可以在「服務定義內容」對話框的輸入目的地頁面中設定的屬性。輸入頁面會定義服務預期之訊息的詳細資料,以及用來擷取訊息的目的地。
屬性 | 說明 |
---|---|
輸入目的地名稱 | 指定傳送要求之目的地佇列或目的地主題的名稱,例如: IBM MQ IRI 的 queue-dest 或 topic-dest 物件,例如:
|
目的地佇列管理程式名稱 | 指定目的地佇列管理程式的名稱。 |
連線佇列管理程式 | 指定發出要求的服務所連接的佇列管理程式名稱。這個項目對應於 MQCONN() 和 MQCONNX() 呼叫中使用的 QmgrName 參數。 |
用戶端連線內容 | 用戶端連線內容會指定詳細的連結,其可包括服務要求者如何連結至特定機器或通道的相關資訊。在某些情況下,如果可以指定用戶端連結和通道名稱會非常有用,不過,過度指定可能會使服務受限。這個問題的解決方案是將納入服務定義的連結資訊量降至最低,並允許基礎架構或 IBM MQ 在可能的情況下遞送訊息。 |
通道表名稱 | 指定用戶端通道表檔案的名稱,該檔案會用來識別通道連線。
|
通道表程式庫 | 指定用戶端通道表的路徑。
|
用戶端通道連線名稱 | 指定當服務要求者建立 IBM MQ MQI 用戶端連結連線時,所使用的連線字串。針對 TCP/IP,連線的格式是主機名稱後面接著埠號,例如:
如果未指定埠號,則會使用預設值 1414。
|
用戶端通道名稱 | 指定當 IBM MQ 服務要求者建立 IBM MQ MQI 用戶端連結連線時,所使用的通道。
|
用戶端通道傳輸類型 | 指定當 IBM MQ 服務要求者建立 IBM MQ MQI 用戶端連結連線時,所使用的傳輸類型。
|
「輸入訊息綱目」頁面
下表列出您可以在「服務定義內容」對話框的輸入訊息綱目頁面中設定的屬性。其可讓您定義訊息內容的綱目。
屬性 | 說明 |
---|---|
入埠資料類型 | 指定預期的入埠資料類型。如果是簡式類型,這可以利用內建 XML xsd 類型(如:xsd:string 或 xsd:int)來建立模型。如果是較複雜的類型,您可以針對該資料類型指定匯入綱目檔和匯入名稱空間,從外部檔匯入資料類型。 |
匯入綱目檔 | 指定要匯入的綱目檔。 |
匯入名稱空間 | 指定要匯入的名稱空間。 |
「輸入訊息標頭」頁面
下表列出您可以在「服務定義內容」對話框的輸入訊息標頭頁面中設定的屬性。輸入頁面會定義服務預期之訊息的詳細資料,以及用來擷取訊息的目的地。某些內容只適用於 MQ 連結類型的服務定義。
屬性 | 說明 |
---|---|
CCSID | 指定對應於 MQMD 結構中 CodedCharSetId 欄位的「編碼字集 ID」。如果未指定這個值,服務要求者和服務提供者會使用對應於訊息資料字集的值。 |
格式 | 指定訊息資料的格式名稱。這個內容對應於 MQRFH2 格式欄位,或是 MQMD 格式欄位(如果沒有 MQRFH2 存在)。該值必須是長度介於 0 到 8 個字元之間的字元字串,且由 A-Z 和 0-9 等字元所組成。 如果是非 SOAP 訊息,格式可以設為任何符合格式欄位中之準則的值。 如果是 SOAP 訊息,這個值已經由「一般」頁面之「SOAP 版本」中設定的值所定義。 |
使用者內容 | 指定 IBM MQ 服務訊息中所附帶的使用者定義資料。這些值必須以 RFH2 資料夾元素所允許的格式來指定;利用類似 XML 的語法來編碼一連串的 Triplet,如:
dt="datatype" 元素是選用的;如果省略,其會被視為字串,而允許依下列方式指定元素:
例如:
如需容許的資料類型及格式的進一步相關資訊,請參閱線上產品說明文件中的 NameValueData (MQCHARn)。不建議您併入重視安全性的內容,如:使用者 ID 或密碼。 |
訊息類型 | 指定傳送的訊息類型。這個內容對應於 MQMD 結構中的 MsgType。可能的值有五個:
|
持續性 | 指定訊息是否為持續性,其對應於 MQMD 結構中的持續性欄位。可能的值有三個:
|
訊息 ID | 指定對應於 MQMD 結構中 MsgId 欄位的「訊息 ID」。 「訊息 ID」可將某些特殊化的 IBM MQ 應用程式描述為服務(例如:共用輸入佇列並根據預先定義的 msgId 值來選取其預期訊息的應用程式)。在服務定義中預先定義的 msgIds,可能會在要求回應「訊息交換型樣」傳回要求的 msgId 這類情況下導致問題。 「訊息 ID」可以是字串或二進位值。二進位值必須是兩個字元的十六進位值(至多 24 對)的字串。請按一下編輯來開啟對話框,然後輸入文字或位元組的值。 |
相關性 ID | 指定對應於 MQMD 結構中 CorrelId 欄位的「相關性 ID」。「相關性 ID」可以是字串或二進位值。二進位值必須是兩個字元的十六進位值(至多 24 對)的字串。 請按一下編輯來開啟對話框,然後輸入文字或位元組的值。 |
期限 | 指定訊息期限。其必須是帶正負號的整數,且是以十分之一秒來測量。期限的範圍是從 1 到 2 147 483 647。 特殊值 無限制 是用來表示訊息不會到期。系統會將 -1 值寫入 WSDL 檔。 未指定 的值表示沒有值寫入 WSDL 檔。這是預設值。 |
優先順序 | 指定與訊息關聯的優先順序,並對應於 MQMD 結構中的優先順序欄位。其必須指定為 0 和 9 之間的整數,其中 0 表示最低優先順序,而 9 表示最高優先順序。 特殊值 無限制 是用來表示會從放置訊息之第一個佇列的定義中,取得訊息優先順序。系統會將 -1 值寫入 WSDL 檔。 未指定 的值表示沒有值寫入 WSDL 檔。這是預設值。 |
編碼 | 指定訊息資料的數值編碼,其對應於 MQMD 結構中的編碼欄位:
|
報告選項 | 指定服務提供者如何設定回覆訊息或錯誤訊息中的訊息和相關性 ID。這個內容對應於 MQMD 結構中的「報告」欄位。有四個可能的值:
|
「輸出目的地」頁面
下表列出您可以在「服務定義內容」對話框的輸出目的地頁面中設定的屬性。輸出頁面會定義服務會在回應中傳給輸入訊息之訊息的詳細資料,以及放置該訊息的目的地。輸出目的地名稱的字首必須是 'msg/queue/'(表示佇列)或 'msg/topic/'(表示主題)。
屬性 | 說明 |
---|---|
輸出目的地名稱 | 指定傳送回應訊息之目的地佇列或目的地主題的名稱,且對應於 MQMD 結構的 ReplyToQ 和 ReplyToQMgr 欄位。「目的地名稱」的格式必須是 IBM MQ URI 的 queue-dest 或 topic-dest 物件,例如:
|
目的地佇列管理程式名稱 | 指定目的地佇列管理程式的名稱。 |
連線佇列管理程式 | 指定發出要求的服務所連接的佇列管理程式名稱。這個項目對應於 MQCONN() 和 MQCONNX() 呼叫中使用的 QmgrName 參數。 |
用戶端連線內容 | 用戶端連線內容會指定詳細的連結,其可包括服務要求者如何連結至特定機器或通道的相關資訊。在某些情況下,如果可以指定用戶端連結和通道名稱會非常有用,不過,過度指定可能會使服務受限。這個問題的解決方案是將納入服務定義的連結資訊量降至最低,並允許基礎架構或 IBM MQ 在可能的情況下遞送訊息。 |
通道表名稱 | 指定用戶端通道表檔案的名稱,該檔案會用來識別通道連線。
|
通道表程式庫 | 指定用戶端通道表的路徑。
|
用戶端通道名稱 | 指定當服務要求者建立 IBM MQ MQI 用戶端連結連線時,所使用的連線字串。針對 TCP/IP,連線的格式是主機名稱後面接著埠號,例如:
如果未指定埠號,則會使用預設值 1414。
|
用戶端通道連線名稱 | 指定當 IBM MQ 服務要求者建立 IBM MQ MQI 用戶端連結連線時,所使用的通道。
|
用戶端通道傳輸類型 | 指定當 IBM MQ 服務要求者建立 IBM MQ MQI 用戶端連結連線時,所使用的傳輸類型。
|
「輸出訊息綱目」頁面
下表列出您可以在「服務定義內容」對話框的輸出訊息綱目頁面中設定的屬性。其可讓您定義訊息內容的綱目。
屬性 | 說明 |
---|---|
離埠資料類型 | 指定預期的離埠資料類型 |
匯入綱目檔 | 指定要匯入的綱目檔 |
匯入名稱空間 | 指定要匯入的名稱空間 |
「輸出訊息標頭」頁面
下表列出您可以在「服務定義內容」對話框的輸出訊息標頭頁面中設定的屬性。輸出頁面會定義服務會在回應中傳給輸入訊息之訊息的詳細資料,以及放置該訊息的目的地。某些內容只適用於 MQ 連結類型的服務定義。
屬性 | 說明 |
---|---|
CCSID | 指定對應於 MQMD 結構中 CodedCharSetId 欄位的「編碼字集 ID」。如果未指定這個值,服務要求者和服務提供者會使用對應於訊息資料字集的值。 |
格式 | 指定訊息資料的格式名稱。這個內容對應於 MQRFH2 格式欄位,或是 MQMD 格式欄位(如果沒有 MQRFH2 存在)。該值必須是長度介於 0 到 8 個字元之間的字元字串,且由 A-Z 和 0-9 等字元所組成。 如果是非 SOAP 訊息,格式可以設為任何符合格式欄位中之準則的值。 如果是 SOAP 訊息,這個值已經由「一般」頁面之「SOAP 版本」中設定的值所定義。 |
使用者內容 | 指定 IBM MQ 服務訊息中所附帶的使用者定義資料。這些值必須以 RFH2 資料夾元素所允許的格式來指定;利用類似 XML 的語法來編碼一連串的 Triplet,如:
dt="datatype" 元素是選用的;如果省略,其會被視為字串,而允許依下列方式指定元素:
例如:
如需容許的資料類型及格式的進一步相關資訊,請參閱 NameValueData (MQCHARn)。不建議您併入重視安全性的內容,如:使用者 ID 或密碼。 |
訊息類型 | 指定傳送的訊息類型。這個內容對應於 MQMD 結構中的 MsgType。可能的值有五個:
|
持續性 | 指定訊息是否為持續性,其對應於 MQMD 結構中的持續性欄位。可能的值有三個:
|
訊息 ID | 指定對應於 MQMD 結構中 MsgId 欄位的「訊息 ID」。 「訊息 ID」可將某些特殊化的 IBM MQ 應用程式描述為服務(例如:共用輸入佇列並根據預先定義的 msgId 值來選取其預期訊息的應用程式)。在服務定義中預先定義的 msgIds,可能會在要求回應「訊息交換型樣」傳回要求的 msgId 這類情況下導致問題。 「訊息 ID」可以是字串或二進位值。二進位值必須是兩個字元的十六進位值(至多 24 對)的字串。請按一下編輯來開啟對話框,然後輸入文字或位元組的值。 |
相關性 ID | 指定對應於 MQMD 結構中 CorrelId 欄位的「相關性 ID」。「相關性 ID」可以是字串或二進位值。二進位值必須是兩個字元的十六進位值(至多 24 對)的字串。 請按一下編輯來開啟對話框,然後輸入文字或位元組的值。 |
期限 | 指定訊息期限。其必須是帶正負號的整數,且是以十分之一秒來測量。期限的範圍是從 1 到 2 147 483 647。 特殊值 無限制 是用來表示訊息不會到期。系統會將 -1 值寫入 WSDL 檔。 未指定 的值表示沒有值寫入 WSDL 檔。這是預設值。 |
優先順序 | 指定與訊息關聯的優先順序,並對應於 MQMD 結構中的優先順序欄位。其必須指定為 0 和 9 之間的整數,其中 0 表示最低優先順序,而 9 表示最高優先順序。 特殊值 無限制 是用來表示會從放置訊息之第一個佇列的定義中,取得訊息優先順序。系統會將 -1 值寫入 WSDL 檔。 未指定 的值表示沒有值寫入 WSDL 檔。這是預設值。 |
編碼 | 指定訊息資料的數值編碼,其對應於 MQMD 結構中的編碼欄位:
|
報告選項 | 指定服務提供者如何設定回覆訊息或錯誤訊息中的訊息和相關性 ID。這個內容對應於 MQMD 結構中的「報告」欄位。有四個可能的值:
|