連接器的運作方式

下列各節說明連接器如何處理商業物件、Meta 物件如何用於配置,以及連接器如何處理事件通知。

商業物件處理

連接器使用要求/回應作業,在它和 URL 之間傳遞資料。 連接器會從整合分配管理系統接收商業物件要求,並將要求轉換為 XML 串流。 要求串流會藉由使用 POST 方法傳遞到 URL,回應串流會被傳回,其不一定會有相似的內容。 回應串流會被轉換成回應商業物件,並與原始最上層商業物件一起傳回整合分配管理系統。 請注意,商業物件要求的類型可以與商業物件回應的類型不同。

圖 2 中說明了完整的要求與回應循環。

圖 2. 商業物件事件處理


要求

當連接器從整合分配管理系統收到商業物件要求時,它必須將其轉換為可以使用適當通訊協定來傳遞的要求串流。 通訊協定處理常式及 XML 資料處理常式用於將要求商業物件轉換並傳遞到 URL。圖 3 說明了要求程序。

圖 3. 要求處理


特別值得一提的是,當連接器從整合分配管理系統收到最上層商業物件時,會發生下列處理流程:

  1. 連接器呼叫 getAttrValue (『URL』) 並擷取 URL。它亦呼叫 getAttrValue (MimeType)getAttrValue (BOPrefix),以從商業物件擷取 MimeType 及 BOPrefix 屬性值。
  2. 連接器會從最上層商業物件擷取要求商業物件。
  3. 連接器會依據最上層商業物件之 URL 欄位中指定的通訊協定,以及指定的通訊協定處理常式套件名稱,來呼叫適當的通訊協定處理常式 (HTTP 或 HTTPS)。
  4. 通訊協定處理常式會依據最上層商業物件的 MimeType 及 BOPrefix 屬性 (如最上層 Meta 物件中所配置),來呼叫適當的資料處理常式。
  5. 資料處理常式將商業物件轉換成要求串流,並將其傳回通訊協定處理常式。
  6. 通訊協定處理常式將要求串流傳送到最上層商業物件中指定的目的地 URL,或傳遞回覆碼。

回應

如果您使用的是同步通訊協定處理常式,則回應商業物件會以回應串流的形式,從 URL 傳回。 如果您使用的是非同步通訊協定處理常式,則僅會傳回回覆碼。 回應處理程序與要求處理程序相似,只是回應串流必須要轉換回商業物件。

註:
回應串流不一定會以與要求串流相同的商業物件類型來代表。

圖 4 說明回應商業物件傳回連接器的處理流程。

圖 4. 從 URL 傳回資料的處理流程


特別值得一提的是,當通訊協定處理常式從 URL 收到回應串流時,如果 MIME 類型為 text/xml,則會發生下列處理流程:

  1. 通訊協定處理常式會呼叫 getContentType() 方法,來擷取 MIME 類型值,以決定要使用的資料處理常式。
  2. 通訊協定處理常式會呼叫 DataHandler 類別,來建立 XML 資料處理常式的實例。

    請注意,回應串流的資料格式可以與原始要求商業物件的資料格式不同。

  3. 通訊協定處理常式會將回應串流轉換成字串,然後通訊協定處理常式會將其傳遞給 XML 資料處理常式。
  4. XML 資料處理常式會依據訊息內容取得商業物件,並從要求串流 (XML 文件) 中擷取資料到商業物件。
  5. XML 資料處理常式會將完成的要求商業物件傳遞給通訊協定處理常式。
  6. 通訊協定處理常式會將要求商業物件傳遞到連接器,連接器會將其新增到原始最上層商業物件。
  7. 連接器會將包含要求商業物件的原始最上層商業物件傳遞回整合分配管理系統。

事件通知

對於事件通知,連接器會使用商業物件來從 URL 擷取事件。 連接器會傳送以回應 XML 文件傳回的要求 XML 文件來輪詢 URL。 回應包含連接器以事件方式傳遞給整合分配管理系統的子項商業物件。 每一個子項商業物件都會作為單一事件進行處理。 非同步通訊協定處理常式不支援事件通知。

註:
輪詢事件處理與商業物件要求處理相同,只是要多進行一步,從回應商業物件擷取事件物件,並將它們傳送到整合分配管理系統。

事件通知商業物件會遵循與 XML 商業物件之要求及回應商業物件相同的商業物件處理作業。 所有未訂閱的事件都會以 WebSphere Business Integration Adapters 標準商業物件傾出格式,保存到檔案中。

若要啟用事件通知,您需要定義事件通知商業物件,並設定您的 URL (如 Web Servlet 或 cgi-bin Script),以處理這些商業物件。連接器使用 POST 方法,將 XML 事件要求文件以串流形式傳送到 URL。URL 應當以串流形式,從 STDIN 讀取 XML 文件,並以串流形式,將包含一或多個事件物件的 XML 文件寫入 STDOUT。

圖 5 說明事件通知的基本程序。

圖 5. 事件通知程序


如需定義商業物件的詳細資訊,請參閱開發連接器的商業物件

處理語言環境相依資料

連接器已國際化,可以支援雙位元組字集,並以指定語言遞送訊息文字。當連接器將資料從使用一種字元碼的位置轉送到使用其他字碼集的位置時,它會執行字元轉換,以保留資料的意義。 「Java 虛擬機器 (JVM)」內的 Java 執行時期環境以 Unicode 字碼集的方式呈現資料。Unicode 包含大部份通用字碼集的字元編碼 (這些字碼集同時包括單位元組與多位元組)。WebSphere 商業整合系統中的大部分元件都是以 Java 撰寫的。因此,當資料在大部分整合元件之間轉送時,無需進行字元轉換。若要以適當的語言為適當的國家或地區記載錯誤及參考訊息,請為您的環境配置 Locale 這個標準配置內容。如需配置內容的詳細資訊,請參閱附錄 A, 連接器的標準配置內容

Copyright IBM Corp. 1997, 2003