JSONドキュメントにおける同種の多次元配列のサポート
アダプタ・エンドポイント構成ウィザードで「RESTアダプタ」を構成するときに、同質の多次元配列を持つJSONサンプルを選択できます。
実行時にOracle Integrationで処理できるようにするには、すべてのJSONメッセージをXMLに変換する必要があります。 意味論的には、XMLに多次元配列と同等のものはありません。 多次元配列をサポートするために、ネストされた配列の始めと終わりを表す中間XML要素が生成されます。 多次元配列が含まれるJSONメッセージを受信すると、これらの予約された要素が、生成されたXMLに挿入され、ネストされた配列の始めと終わりを表します。 XML要素をJSONに変換しなおす場合、挿入された要素はネストされた配列を使用してJSONに変換されます。
次のJSONドキュメントは、多次元配列(@ref "rercordsData”)で構成されています。
{
"studentData": {
"fieldNames": [ "id","mobile_number" ],
"recordsData": [ ["21","23"], ["+91123456789", "+91987654321" ] ],
"name": "jack"
},
"schoolData": {
"Name": "ABCInternations",
"StudentNumbers": 1300,
"Address": "YYY streets Sector-44 India"
}
}
JSONドキュメントに対して、サンプルで生成されたスキーマのXMLは、次のようになります。
<?xml version = '1.0' encoding = 'UTF-8'?>
<ns0:executeResponse xmlns:ns1="http://xmlns.oracle.com/cloud//REST/test/types"
xmlns:ns0="http://xmlns.oracle.com/cloud//REST/test_REQUEST/types">
<ns1:response-wrapper>
<ns1:studentData>
<ns1:fieldNames>id</ns1:fieldNames>
<ns1:fieldNames>mobile_number</ns1:fieldNames>
<ns1:recordsData>
<ns1:nestedArray>
<ns1:nestedArrayItem>21</ns1:nestedArrayItem>
<ns1:nestedArrayItem>23</ns1:nestedArrayItem>
</ns1:nestedArray>
<ns1:nestedArray>
<ns1:nestedArrayItem>+91123456789</ns1:nestedArrayItem>
<ns1:nestedArrayItem>+91987654321</ns1:nestedArrayItem>
</ns1:nestedArray>
</ns1:recordsData>
<ns1:name>jack</ns1:name>
</ns1:studentData>
<ns1:schoolData>
<ns1:Name>ABCInternations</ns1:Name>
<ns1:StudentNumbers>1300</ns1:StudentNumbers>
<ns1:Address>YYY streets Sector-44 India</ns1:Address>
</ns1:schoolData>
</ns1:response-wrapper>
</ns0:executeResponse>
ネストされた配列の要素は、マッパーでnestedArrayとして表示され、要素内のアイテムはnestedArrayItemとして表示されます。 nestedArrayをfor-each文、nestedArrayItemをfor-each文としてマップする必要があります。
「図ics_md_jsonl.pngの説明」