Cosminexus サービスプラットフォーム システム構築・運用ガイド
標準受付からサービスアダプタのサービス部品を直接呼び出す場合,サービス部品側で要求するユーザ電文(XML文書)をサービスリクエスタで作成する必要があります。そのため,サービスリクエスタで作成するXMLに誤りがあると,正しくサービス部品を呼び出せません。SOAP通信でのSOAPメッセージとユーザ電文の関係を次の図に示します。
図7-65 SOAP通信でのSOAPメッセージとユーザ電文の関係
ユーザ電文に誤りがある(フォーマット定義の形式と異なる電文を実行した)場合,サービスアダプタのプロトコルの違いによって,エラーの内容が異なります。
また,電文の形式によっては,サービスアダプタでエラーとならないでサービス部品で例外になったり,サービス部品でエラーにならないで想定していない応答が返ったりすることがあります。
サービスアダプタ(Webサービス)から呼び出せるサービス部品の仕様は,マニュアル「Cosminexus サービスプラットフォーム 開発ガイド」のWebサービスを利用したサービス部品の適用範囲で示す適用範囲を満たしている必要があります。適用範囲以外のサービス部品の場合,動作の保障ができません。
サービスアダプタ(SessionBean)から呼び出せるサービス部品の仕様は,マニュアル「Cosminexus サービスプラットフォーム 開発ガイド」のSessionBeanを利用したサービス部品の適用範囲で示す適用範囲を満たしている必要があります。適用範囲以外のサービス部品の場合,動作の保障ができません。
サービスリクエスタから要求したユーザ電文に誤りがある場合,MDB(WS-R/DBキュー)のサービスアダプタではエラーになりません。開発環境で定義するときにスキーマを定義しますが,通常,このスキーマで定義した形式でないユーザ電文でも,非同期キューに送信されます。サービス部品側でユーザ電文を受け取って検証するよう作成している場合は,サービス部品側でエラーを検知します。
サービスアダプタに指定したフォーマット定義(XMLスキーマ)とユーザ電文(XML文書)が,XMLスキーマの仕様に従い,妥当かどうか検証できます。
サービスアダプタでの電文の検証機能を使用するには,HCSCサーバランタイム定義ファイルのtelegram-validationプロパティで設定します。HCSCサーバランタイム定義ファイルの詳細については,「9. 定義ファイル」の「HCSCサーバランタイム定義ファイル」を参照してください。
電文の検証機能は,HCSCサーバ全体の次の表に示すアダプタで有効となります。サービスアダプタごとには設定できません。また,サービス部品を呼び出す要求電文,または応答電文に対して有効となります。
表7-42 電文の検証機能が有効になるアダプタ
アダプタ種別 | プロトコル種類 | 方向 | データ変換定義のパターン | 検証するフォーマット定義 | 電文種類 | 検証機能の有効 |
---|---|---|---|---|---|---|
サービスアダプタ | Webサービス,SessionBean,MDB(WS-R),MDB(DBキュー) | 要求 | データ変換なし | サービス部品電文 | XML | ○ |
バイナリ | ×※1 | |||||
標準−サービス部品でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | XML | ○ | ||||
バイナリ | ×※1 | |||||
応答 | データ変換なし | サービス部品電文 | XML | ○ | ||
バイナリ | ×※1 | |||||
サービス部品−標準でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | XML | ○ | ||||
バイナリ | ×※1 | |||||
フォルト | データ変換なし | × | XML | × | ||
DBアダプタ | 要求 | データ変換なし | サービス部品電文 | XML | ×※2 | |
標準−サービス部品でデータ変換 | 標準電文 | XML | × | |||
バイナリ | × | |||||
サービス部品電文 | XML | ×※2 | ||||
応答 | データ変換なし | サービス部品電文 | XML | ×※2 | ||
サービス部品−標準でデータ変換 | 標準電文 | XML | × | |||
バイナリ | × | |||||
サービス部品電文 | XML | ×※2 | ||||
TP1アダプタ | 要求 | データ変換なし | サービス部品電文 | バイナリ | ×※1 | |
標準−サービス部品でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | バイナリ | ×※1 | ||||
応答 | データ変換なし | サービス部品電文 | バイナリ | ×※1 | ||
サービス部品−標準でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | バイナリ | ×※1 | ||||
Object Accessアダプタ | 要求 | データ変換なし | サービス部品電文 | XML | ○ | |
標準−サービス部品でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | XML | ○ | ||||
応答 | データ変換なし | サービス部品電文 | XML | ○ | ||
サービス部品−標準でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | XML | ○ | ||||
ファイルアダプタ | 要求 | データ変換なし | サービス部品電文 | XML | ○ | |
バイナリ | ×※1 | |||||
標準−サービス部品でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | XML | ○ | ||||
バイナリ | ×※1 | |||||
応答 | データ変換なし | サービス部品電文 | XML | ○ | ||
バイナリ | ×※1 | |||||
サービス部品−標準でデータ変換 | 標準電文 | XML | ○ | |||
バイナリ | ×※1 | |||||
サービス部品電文 | XML | ○ | ||||
バイナリ | ×※1 | |||||
iWayアダプタ | 要求 | データ変換なし | サービス部品電文 | XML | × | |
応答 | データ変換なし | サービス部品電文 | XML | × |
注※1 バイナリ電文のサービス部品呼び出し時は,設定したフォーマット定義を基にDOMに変換(パース処理)しています。そのため,バイナリ電文でフォーマット定義に対して妥当でない電文を送付した場合,例外が発生し,次のメッセージが表示されます。
KDEC05504-E An attempt to specify format definition settings has failed. (information1 = 保守情報, information2 = 保守情報)
フォーマット定義の設定に失敗しました。
注※2 DBアダプタは,telegram-validationプロパティ以外の機能で,電文形式を検証します。例えば,サービスアダプタで,要求時に,「リクエスタ(バイナリ)−標準(XML)−サービス部品(バイナリ)」の変換をした場合,要求電文に対して次の流れで変換と検証をします。
All Rights Reserved. Copyright (C) 2006, 2008, Hitachi, Ltd.