4.5 デシリアライザ
ここでは、各デシリアライザコンポーネントについて説明します。
4.5.1 JSONデシリアライザ#
JSONの指定データを出力するコンポーネントです。
入力ポートからJSONファイルを受け取り、JSONPathで指定された値を出力します。

4.5.1.1 基本情報#
JSONデシリアライザの基本情報は、次の通りです。
| 項目 | 説明 |
|---|---|
| ベース名 | JSON |
| 説明 | コンポーネントのJSONファイルを受け取ってデータに加工し、他のコンポーネントに渡します。 |
| 消費ポイント | 0 |
| ポート | 入力:1 他のコンポーネントからJSONファイルを受け取ります。 出力:1 入力したJSONファイルを加工したデータを出力します。 システム:1 コンポーネントの稼働状況やエラー情報を出力します。出力するエラー情報の詳細は、「エラーコード一覧」をご覧ください。 |
4.5.1.2 設定項目#
JSONデシリアライザの設定項目は、次の通りです。

| 項目 | 説明 |
|---|---|
| 名称 | コンポーネントに付与する名前 ※他のコンポーネント名と重複する事はできません。 |
| 自動起動無効 | コンポーネントの自動起動を無効にする場合ON |
| データ優先順 | パターンに複数件マッチした場合の優先順を選択 |
| NULL値 | nullを受信した場合の出力を選択 初期値 真偽値:false 符号あり整数:0 符号なし整数:0 浮動小数:null ※文字列は常にスキップ |
- JSONデシリアライザの加工データは、次の設定項目によって定義されます。
| 項目 | 説明 |
|---|---|
| パターン | JSONPathを入力 |
| データ名 | データの名前を入力 |
| データ型 | 出力する値のデータ型を選択 |
パターンの入力例
JSON
{
"items": [
{ "id": 1, "value": 1 },
{ "id": 2, "value": 2 },
{ "id": 3, "value": 3 },
{
"id": 4,
"sub_items": [
{ "id": 41, "value": 41 },
{ "id": 42, "value": 42 }
]
}
]
}
| パターン | マッチ結果 | データ優先順 | 出力結果 |
|---|---|---|---|
| $..value | [1, 2, 3, 41, 42] | 末尾 | 42 |
| $.items[1].value | 2 | 末尾 | 2 |
| $..[?(@.id>=3)].value | [3, 41, 42] | 末尾 | 42 |
| $["items"][*]["sub_items"]..value | [41, 42] | 先頭 | 41 |
データ優先順
パターンのマッチ結果が複数件の場合、マッチする順序は辞書順になります。
JSON
{
"b": {
"a": "$['b']['a']"
},
"d": [
{
"a": "$['d'][0]['a']"
},
{
"b": {
"a": "$['d'][1]['b']['a']"
}
}
],
"a": "$['a']",
"c": [
{
"b": {
"a": "$['c'][0]['b']['a']"
},
"a": "$['c'][0]['a']"
},
{
"a": "$['c'][1]['a']",
"b": {
"a": "$['c'][1]['b']['a']"
}
}
]
}
パターン: $..a
マッチ順
- $['a']
- $['b']['a']
- $['c'][0]['a']
- $['c'][0]['b']['a']
- $['c'][1]['a']
- $['c'][1]['b']['a']
- $['d'][0]['a']
- $['d'][1]['b']['a']
データ優先順が「末尾」の場合は$['d'][1]['b']['a']が登録され、「先頭」の場合は$['a']が登録されます。