JSONDecode - JSONからストリームへの変換

入力のJSON文字列をXML, ParameterList, Recordのいずれか指定されたストリームに変換します。
どのようにしてこれらのストリームに変換されるかについては「変換方法について」を参照してください。

※このコンポーネントは将来廃止されます。JSONストリームを使用してください。

■ストリーム情報

入力フォーマットText
接続数1
出力フォーマットXML,ParameterList,Record
説明 入力のJSON文字列をXML, ParameterList, Recordのいずれか指定されたストリームに変換します。
どのようにしてこれらのストリームに変換されるかについては「変換方法について」を参照してください。

■コンポーネントプロパティ

名前プロパティ型マッピング説明
JSON種別loopProcess   出力 入力のJSON文字列が、JSONオブジェクトか配列かどうかを指定します。
配列を指定した場合はループを開始します。
オブジェクト [false] - JSONオブジェクトの場合
配列 [true] - 配列の場合
ルート要素名string入力&出力 出力ストリームがXMLの場合に、付加するルート要素の名前を指定します。
ルート要素を付加する必要ない場合は空にします。
初期値は"root"です。

■ループ処理

JSON種別 が「配列」の場合、このコンポーネントがループの起点となって、配列の要素ごとにJSONオブジェクトを変換して出力します。
配列の要素がJSONオブジェクトでなかった場合は、各要素に対して"array"というキーを付加して、各要素ごとにJSONオブジェクトを新しく作成します。

例えば、次のような配列は

                [ "item1", "item2" ]
                

事前に次のような配列に変換されてからストリームに変換されます。

[ {"array": "item1"}, {"array": "item2"} ]

■トランザクション処理

コミット何もしません。
ロールバック何もしません。

■エラー処理

タイプパラメーターエラー処理フロー
へのストリーム
エラー
コード
説明
汎用 なし コンポーネントの入力ストリーム1入力されたJSON文字列が配列であるのに、JSON種別 プロパティの指定が間違っている場合
2入力のJSON文字列に変換対象となるJSONオブジェクトが存在しなった場合
3入力のJSON文字列の形式に誤りがある場合
4ルート要素が指定されていないためにXMLに変換できなかった場合
5変換時にエラーが発生した場合

■変換方法について

JSONオブジェクトをXML, ParameterList, Recordのいずれか指定されたストリームに変換することができます。

XML

入力のJSON文字列の例

{ "item": {
    "name": "record array",
    "record": [
      {
        "attr1": 1,
        "element1": "aaa"
      },
      {
        "attr1": 2,
        "element1": "bbb"
      }
    ]},
    "color": null
}

変換後のXML

<root>
	<color isNull="true"/>
	<item>
	    <name>record array</name>
	    <record>
	        <attr1>1</attr1>
	        <element1>aaa</element1>
	    </record>
	    <record>
	        <attr1>2</attr1>
	        <element1>bbb</element1>
	    </record>
	</item>
</root>

ParameterList

入力のJSON文字列の例

{ "id": "1",
  "name": "pencil",
  "stock": [
    {
      "color": "red",
      "count": 5
    },
    {
      "color": "blue",
      "count": 10
    }]
}

変換後のParameterList


フィールド名データ型取得する値
idInteger1
nameStringpencil
stockString[{"color": "red", "count": 5}, {"color": "blue", "count": 10}]
priceIntegernull

Record

入力のJSON文字列の例

{ "id": "1",
  "name": "pencil",
  "stock": [
    {
      "color": "red",
      "count": 5
    },
    {
      "color": "blue",
      "count": 10
    }]
}

変換後のRecord


フィールド名データ型取得する値
idInteger1
nameStringpencil
stockString[{"color": "red", "count": 5}, {"color": "blue", "count": 10}]
priceIntegernull