WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

メッセージ・マップから変換されたグラフィカル・データ・マップの動作の変更

以前のバージョンの WebSphere® Message Broker のメッセージ・マップをグラフィカル・データ・マップに変換した場合、そのグラフィカル・データ・マップをメッセージング・ソリューションで使用する前に、追加のタスクの実行が必要になることがあります。

メッセージ・マッピングは ESQL コードに重点を置いていましたが、グラフィカル・データ・マッピング・エディター機能では専用のランタイム実行エンジンを使用します。

メッセージ・マップをグラフィカル・データ・マップに変換する準備をしている場合は、以下の点を考慮する必要があります。

ランタイム環境

デプロイメント

ESQL の動作

グラフィカル・データ・マップにおける重要な変換動作の相違点

このセクションでは、以前のメッセージ・マッピング・エディターで異なる構造体を使って実装された変換タスクの実装方法について説明します。 このリストは完全なリストではありませんが、グラフィカル・データ・マップの概念および開発について検討する際に役に立ちます。

出力エレメントへのリテラル値の割り当て

Assign 変換を使用して、出力エレメントでのリテラル値を設定できます。 Assign 変換はストリング表記を使用します。これは、該当する出力エレメントに割り当てられるため、そのタイプに応じてフォーマット設定される必要があります。 引用符はストリング値の一部として渡されるため、プロパティー値を引用符で囲む必要はありません。 明示的に型指定された値を渡す場合は、入力ワイヤリングのない xs:<type> Cast 変換を使用してください。

条件式内のリテラル

メッセージ・マッピング・エディターでは、型キャストを暗黙指定して基礎となるストリング値表記を使用する式を作成できました。 グラフィカル・データ・マッピング・エディターでは XPath 式構文を使用し、厳密な型指定が実施されます。 例えば、ブール・タイプのエレメントでストリング・リテラル値「true」をテストすると、タイプ例外が発生します。

XPath 関数ではパラメーターの型指定に応じた適切な値が必要

メッセージ・マップには、XPath 関数に類似する関数が備わっており、これらは対応する ESQL 関数によって実行時に実装されます。 これらの ESQL 関数の中には、関数の XPath 仕様で定義されているよりも値の型指定が緩やかなものがあります。 グラフィカル・データ・マッパーには、準拠する XPath 関数が備わっています。 したがって、メッセージ・マップを変換して作成されたグラフィカル・データ・マップは、無効な値や型キャストの問題が原因で実行時に失敗する可能性があります。 特に、パラメーター値が空の場合に、対応する ESQL 関数がデフォルト値を設定することがあります。 このような問題を解決するには、Xpath 関数パラメーターとして無効な値が関数に渡されることを防止する条件を追加してください。

条件式における複合タイプのテキスト値

メッセージ・マップでは、条件式で複合タイプ・エレメントの混合内容のテキスト値にアクセスするときに、ユーザーが明示的な指定を行う必要はありません。 グラフィカル・データ・マッパーは、標準的な XPath 構文に基づいているため、 「/text()」を明示的に使用して、混合内容のテキスト値を使用することを示す必要があります。 このため、混合内容のテキスト値を参照していた条件式を含むメッセージ・マップを変換した場合は、欠落している「/text()」を追加するためにパス式を拡張しない限り、失敗する可能性があります。

サブマップ呼び出しにおけるリテラル

メッセージ・マップ・エディターでは、サブマップ入力の型指定が正しく検証されませんでした。 ユーザーは、サブマップ入力の標準的なエレメント・パス値を編集し、型のないリテラル値を代わりに指定することができました。 グラフィカル・データ・マッパーの検証では、すべてのサブマップ入力が、適切に型指定された入力エレメントに接続されている必要があります。

「For each index」カウンター変数

変換によっては、「For each index」カウンター値を使用する必要があります。 バージョン 6.1 およびバージョン 7.0 のメッセージ・マップには、現在のループ・カウントを取得するための msgmap:occurrence 関数が備わっていました。 グラフィカル・データ・マッパーには For loop カウンター変数があり、これを使用して同等の機能を利用できます。 この変数の名前は、$<For each primary input element name>-index という固定形式です。 これを取得するには、関連する「ForEach 変換」の「フィルター・プロパティーの式」パネルのコンテンツ・アシスト (Ctrl+Space) を使用するか、ネストされた変換内のコンテンツ・アシストを使用できます。

特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:49:32


概念トピック概念トピック | バージョン 8.0.0.5 | br40815_