WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Mapeamento de Árvore de Mensagens no Domínio JSON

Ao ler uma mensagem JSON, o analisador constrói uma árvore de mensagens a partir do fluxo de bits de entrada, mapeando valores JSON para os correspondentes tipos de elementos da árvore de mensagens. Ao serializar uma árvore de mensagens no fluxo de bits de saída, os tipos de elementos da árvore são mapeados para tipos de valores JSON.

As tabelas a seguir mostram como os valores de mensagens JSON são mapeados para tipos de elementos da árvore de mensagens:

Fluxo de bits JSON para mapeamento de valor da árvore de mensagens

O analisador JSON mapeia valores JSON para tipos de elementos da árvore de mensagens de acordo com as regras na tabela a seguir:

Valor JSON presente no fluxo de bits Analisado como
Seqüência de caracteres CHARACTER

Valor de Número JSON apresentado como:

  • Um prefixo de sinal de menos se o valor for negativo
  • Pelo menos um dígito, que pode ser zero
  • Sem parte fracionária de ponto
  • Sem expoente
INTEGER

Valor de Número JSON apresentado como:

  • Um prefixo de sinal de menos se o número for negativo
  • Pelo menos um dígito na parte inteira, que pode ser zero
  • Um destes ou ambos:
  • Um ponto e pelo menos um dígito na parte fracionária, que pode ser zero
  • Um exponente usando 'E' maiúsculo ou 'e' minúsculo, um sinal de mais ou de menos opcional e pelo menos um dígito
FLOAT
Booleana BOOLEAN
Nulo NULL

Árvore de mensagens para mapeamento de valor da mensagem JSON

O serializador JSON mapeia elementos da árvore de mensagens para tipos de valores JSON de acordo com as regras na tabela a seguir:

Tipo de elemento da árvore de mensagens Domínio JSON serializa como
  Tipo JSON Formato
BIT Seqüência de caracteres Qualquer número de 0 e 1s
BLOB Seqüência de caracteres Número par de dígitos hexadecimais
CHARACTER Seqüência de caracteres Dados de caracteres com sequência JSON escapando qualquer caractere de aspas duplas (") ou barra invertida (\) dentro do CHAR
DATE Seqüência de caracteres A representação de sequência ESQL padrão, 'yyyy-mm-dd'
TIME, GMTTIME Seqüência de caracteres A representação de sequência ESQL padrão, 'hh:mm:ss.ffffff'
INTEGER Número
  • Um prefixo de sinal de menos se o número for negativo
  • Pelo menos um dígito, que pode ser zero
  • Sem ponto fracionário
  • Sem expoente
FLOAT Número
  • Um prefixo de sinal de menos se o número for negativo
  • Pelo menos um dígito na parte inteira, que pode ser zero
  • Pelo menos um dígito na parte fracionária, que pode ser zero
  • Uma parte exponencial usando 'E' maiúsculo, um sinal de mais ou de menos e pelo menos um dígito
DECIMAL Número
  • Um prefixo de sinal de menos se o número for negativo
  • Pelo menos um dígito na parte inteira, que pode ser zero
  • Pelo menos um dígito na parte fracionária, que pode ser zero

Literais decimais ‘NAN', ‘INF', etc., não são suportados ao serializar para JSON.

BOOLEAN Booleana true ou false

O serializador apenas serializa elementos de árvore lógica booleanos com valores true ou false; desconhecido não é suportado

NULL Nulo Nulo
ROW Objeto programa

Nota: A designação de um ROW diretamente para uma árvore de Domínio JSON não produz matrizes 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;

Produz o seguinte fluxo de bits JSON

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

Para produzir uma matriz JSON a partir de um tipo ROW, o campo JSON.Array também seria configurado.

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

Produz o seguinte fluxo de bits JSON

"aRow":[
  {"fieldOne":"Row1Field1","fieldTwo":"Row1Field2"},
  {"fieldOne":"Row2Field1","fieldTwo":"Row2Field2"}
]
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

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

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:31:05


Tópico de ConceitoTópico de Conceito | Versão 8.0.0.5 | bc40070_