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

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

JSON ドメインでのメッセージ・ツリー・マッピング

JSON メッセージを読み取るとき、パーサーは対応するメッセージ・ツリーのエレメント・タイプに JSON 値をマップすることで、入力ビット・ストリームからメッセージ・ツリーを作成します。 メッセージ・ツリーを出力ビット・ストリームにシリアライズする際に、ツリーのエレメント・タイプが JSON 値タイプにマップされます。

以下の表は、JSON メッセージ値がメッセージ・ツリーのエレメント・タイプにどのようにマップされるかを示しています。

JSON ビット・ストリームからメッセージ・ツリー値へのマッピング

JSON パーサーは、JSON 値を以下の表のルールに従ってメッセージ・ツリーのエレメント・タイプにマップします。

ビット・ストリームにある JSON 値 解析された結果
ストリング CHARACTER

以下の形式で表される JSON 数値

  • 値が負のときは、負符号 (-) の接頭部
  • 1 桁以上 (ゼロ可)
  • 小数点以下の部分を持たない
  • 指数不可
INTEGER

以下の形式で表される JSON 数値

  • 数値が負のときは、負符号 (-) の接頭部
  • 整数部は 1 桁以上の数字 (ゼロ可)
  • 以下のいずれか、または両方:
  • 小数点と、1 桁以上の小数部分 (ゼロ可)
  • 大文字の「E」または小文字の「e」、オプションの正符号 (+) または負符号 (-)、および 1 桁以上の数値を使用した指数
FLOAT
ブール BOOLEAN
NULL NULL

メッセージ・ツリーから JSON メッセージ値へのマッピング

JSON シリアライザーは、メッセージ・ツリーのエレメントを以下の表のルールに従って JSON 値タイプにマップします。

メッセージ・ツリーのエレメント・タイプ JSON ドメインによってシリアライズされた結果
  JSON タイプ Format
BIT ストリング 任意の個数の 0 と 1
BLOB ストリング 偶数の 16 進数字
CHARACTER ストリング char データ (CHAR 内の二重引用符 (") または円記号 (¥) をエスケープする JSON ストリングを伴う)
DATE ストリング 標準 ESQL ストリング表記 (yyyy-mm-dd)
TIME、GMTTIME ストリング 標準 ESQL ストリング表記 (hh:mm:ss.ffffff)
INTEGER 数値
  • 数値が負のときは、負符号 (-) の接頭部
  • 1 桁以上 (ゼロ可)
  • 小数点以下を持たない
  • 指数不可
FLOAT 数値
  • 数値が負のときは、負符号 (-) の接頭部
  • 整数部は 1 桁以上の数字 (ゼロ可)
  • 小数部は 1 桁以上の数字 (ゼロ可)
  • 大文字の「E」、正符号/負符号、および 1 桁以上の数値を使用した指数部
DECIMAL 数値
  • 数値が負のときは、負符号 (-) の接頭部
  • 整数部は 1 桁以上の数字 (ゼロ可)
  • 小数部は 1 桁以上の数字 (ゼロ可)

10 進リテラル「NAN」、「INF」などは、JSON へのシリアライズ時にサポートされていません。

BOOLEAN ブール true または false

シリアライザーは、true 値または false 値を持つブール論理ツリー・エレメントのみをシリアライズします。不明値はサポートされていません。

NULL NULL NULL
ROW オブジェクト

注: ROW を JSON ドメイン・ツリーに直接割り当てた場合、JSON 配列は生成されません。

DECLARE myRow ROW;
SET myRow.rowData[1].fieldOne = 'Row1Field1';
SET myRow.rowData[1].fieldTwo = 'Row1Field2';
SET myRow.rowData[2].fieldOne = 'Row2Field1';
SET myRow.rowData[2].fieldTwo = 'Row2Field2';
SET OutputRoot.JSON.Data.aRow = myRow;

次の JSON ビット・ストリームが生成されます。

"aRow":{
  "rowData": {"fieldOne":"Row1Field1","fieldTwo":"Row1Field2"},"
  "rowData": {"fieldOne":"Row2Field1","fieldTwo":"Row2Field2"}
}
ROW 配列

ROW タイプから JSON 配列を生成するために、JSON.Array フィールドも設定されます。

SET OutputRoot.JSON.Data.aRow = myRow;
SET OutputRoot.JSON.Data.aRow TYPE = JSON.Array;

次の JSON ビット・ストリームが生成されます。

"aRow":[
  {"fieldOne":"Row1Field1","fieldTwo":"Row1Field2"},
  {"fieldOne":"Row2Field1","fieldTwo":"Row2Field2"}
]
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

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

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


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