WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

Zuordnungen für Nachrichtenbaumstrukturen in der JSON-Domäne

Beim Lesen einer JSON-Nachricht erstellt der Parser aus dem Eingabebitstrom eine Nachrichtenbaumstruktur. Dazu ordnet er die JSON-Werte entsprechenden Elementtypen für Nachrichtenbaumstrukturen zu. Bei der Serialisierung einer Nachrichtenbaumstruktur in den Ausgabebitstrom werden die Elementtypen der Baumstruktur wieder den entsprechenden JSON-Wertetypen zugeordnet.

Folgende Tabellen zeigen eine Übersicht der Zuordnungen zwischen den Werten von JSON-Nachrichten und den Elementtypen von Nachrichtenbaumstrukturen:

Zuordnungen zwischen den Werten des JSON-Bitstroms und den Werten der Nachrichtenbaumstruktur

Der JSON-Parser verwendet bei der Zuordnung von JSON-Werten zu Elementtypen der Nachrichtenbaumstruktur folgende Regeln:

JSON-Wert im Bitstrom Durch Parser zugeordneter Wert
String CHARACTER

JSON-Zahlenwert mit folgender Syntax:

  • Vorangestelltes Minuszeichen bei negativem Wert
  • Mindestens eine Ziffer, die auch null (0) sein kann
  • Keine Nachkommastellen
  • Kein Exponent
INTEGER

JSON-Zahlenwert mit folgender Syntax:

  • Vorangestelltes Minuszeichen bei negativer Zahl
  • Mindestens eine Ziffer im Vorkommabereich, die auch null (0) sein kann
  • Eine der folgenden Komponenten:
  • Ein Komma und mindestens eine Ziffer im Nachkommabereich, die auch null (0) sein kann
  • Ein Exponent, gekennzeichnet durch ein groß oder klein geschriebenes 'e' ('e' oder 'E'), mit einem optionalen Plus- oder Minuszeichen und mindestens einer Ziffer
FLOAT
Boolean BOOLEAN
Null NULL

Zuordnungen zwischen den Werten der Nachrichtenbaumstruktur und den Werten der JSON-Nachricht

Die JSON-Serialisierung verwendet bei der Zuordnung der Elemente der Nachrichtenbaumstruktur zu JSON-Wertetypen folgende Regeln:

Elementtyp der Nachrichtenbaumstruktur Durch JSON-Serialisierung zugeordneter Wert
  JSON-Typ Format
BIT String Jede aus 0 und 1 bestehende Ziffernfolge
BLOB String Gerade Zahl aus Hexadezimalziffern
CHARACTER String CHAR-Daten mit JSON-Zeichenfolge-Escapes für jedes doppelte Anführungszeichen (") oder Backslash (\) innerhalb der CHAR-Zeichenfolge
DATE String ESQL-Standardzeichenfolge-Darstellung 'yyyy-mm-dd'
TIME, GMTTIME String ESQL-Standardzeichenfolge-Darstellung 'hh:mm:ss.ffffff'
INTEGER Nummer
  • Vorangestelltes Minuszeichen bei negativer Zahl
  • Mindestens eine Ziffer, die auch null (0) sein kann
  • Keine Nachkommastellen
  • Kein Exponent
FLOAT Nummer
  • Vorangestelltes Minuszeichen bei negativer Zahl
  • Mindestens eine Ziffer im Vorkommabereich, die auch null (0) sein kann
  • Mindestens eine Ziffer im Nachkommabereich, die auch null (0) sein kann
  • Ein Exponent mit einem groß geschriebenen 'E', einem Plus- oder Minuszeichen und mindestens einer Ziffer
DECIMAL Nummer
  • Vorangestelltes Minuszeichen bei negativer Zahl
  • Mindestens eine Ziffer im Vorkommabereich, die auch null (0) sein kann
  • Mindestens eine Ziffer im Nachkommabereich, die auch null (0) sein kann

Dezimalliterale wie 'NAN' oder 'INF' werden bei der Serialisierung in JSON nicht unterstützt.

BOOLEAN Boolean true oder false

Bei Booleschen Werten unterstützt die Serialisierung nur logische Baumstrukturelemente mit den Werten 'true' oder 'false'. 'Unknown' wird nicht unterstützt.

NULL Null Null
ROW Objekt

Hinweis: Durch direkte Zuordnung eines ROW-Typs zu einer Baumstruktur der JSON-Domäne ergeben sich keine JSON-Arrays.

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;

Generiert den folgenden JSON-Bitstrom:

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

Zur Generierung eines JSON-Arrays aus einem ROW-Typ müsste auch das JSON.Array-Feld gesetzt sein.

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

Generiert den folgenden JSON-Bitstrom:

"aRow":[
  {"fieldOne":"Row1Field1","fieldTwo":"Row1Field2"},
  {"fieldOne":"Row2Field1","fieldTwo":"Row2Field2"}
]
Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

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

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:22:43


KonzeptthemaKonzeptthema | Version 8.0.0.5 | bc40070_