Transformação e Validação de Dados
CSV
-
Descrição: o componente CSV é utilizado para ler e escrever dados no formato CSV (Comma-Separated Values). Ele facilita a manipulação de arquivos CSV, permitindo conversões e transformações de dados de forma eficiente.
CSV para JSON
-
Exemplo
-
A rota é acionada quando uma requisição
POSTé feita para o endpoint/csv-to-json. -
Os dados no corpo da requisição, no formato CSV, são desserializados (
unmarshal) em mapas (useMaps: true) utilizando o delimitador definido (delimiter: ","). -
Esses mapas são transformados em JSON e retornados como resposta.
-
Script |
Diagrama |
|
|
JSON para CSV
-
Exemplo
-
O fluxo começa com uma requisição
POSTpara o endpoint/json-to-csvcom dados no formato JSON. -
O JSON recebido é convertido (
unmarshal) para uma estrutura interna manipulável (mapas). -
Os dados processados são convertidos para o formato CSV (
marshal).-
Adicionalmente, o delimitador
;(ponto e vírgula) é usado para separar valores e -
Os cabeçahos
firstNameelastNamesão adicionados.
-
-
Script |
Diagrama |
|
|
| Veja mais informações sobre Data Format como um componente Camel. |
JOLT
-
Descrição: o componente JOLT permite transformar e manipular dados JSON de forma declarativa, utilizando especificações definidas em arquivos JOLT.
-
Exemplo
-
O fluxo começa com uma requisição
POSTno endpoint/jolt-poc. -
O corpo da requisição é registrado nos logs.
-
O fluxo transforma o corpo da requisição usando um template Jolt localizado no arquivo
template.json.-
Os parâmetros
inputType: JsonStringeoutputType: JsonStringgarantem que a entrada e a saída sejam manipuladas como strings JSON. -
contentCache: truepermite cache dos resultados.
-
-
Por fim, o fluxo registra o resultado da transformação nos logs.
-
Script |
Diagrama |
|
|
JSLT
-
Descrição: o componente JSLT é utilizado para transformar dados usando templates escritos em JSLT. Ele processa informações de entrada, como JSON ou XML, reorganizando e formatando-as de acordo com um modelo que você define.
-
Exemplo
-
O fluxo começa com uma requisição
POSTno endpoint/hello. -
Os dados da requisição são transformados por meio do componente JSLT usando o arquivo de template
expression.jslt.-
O parâmetro
contentCache=truehabilita o cache do conteúdo do template.
-
-
Por fim, a mensagem transformada é registrada no log de nível
info.
-
Script |
Diagrama |
|
|
JSONata
-
Descrição: o componente JSONata permite processar e transformar dados JSON utilizando a linguagem de consulta JSONata. Ele possibilita a realização de operações complexas, como filtragem, transformação e agregação de dados.
-
Exemplo
-
O fluxo começa com uma requisição
POSTno endpoint/jsonata. -
Depois, o conteúdo da requisição é transformado usando uma expressão JSONata armazenada no arquivo
expression.jsonata. -
Os parâmetros indicam que:
-
os resultados da transformação podem ser armazenados em cache (
contentCache: true); -
o tipo de entrada para a transformação é uma string JSON (
inputType: JsonString) ; -
o tipo de saída também será uma string JSON (
outputType: JsonString).
-
-
Depois, os dados são enviados a um endpoint externo via requisição
POST.
-
Script |
Diagrama |
|
|
JSON Schema Validator
-
Descrição: o componente JSON Schema Validator realiza validação de bean do corpo da mensagem.
-
Exemplo
-
O fluxo começa quando uma requisição
POSTé recebida no endpoint/hello. -
Depois o componente de validação JSON é usado para verificar se o corpo da requisição corresponde ao esquema definido no arquivo
my-json-schema.json.
-
Script |
Diagrama |
|
|
XJ
-
Descrição: o componente XJ permite converter documentos XML e JSON sem a necessidade de objetos Java intermediários.
-
Exemplo
-
O fluxo começa ao receber uma requisição
POSTno endpoint/example-xj. -
Faz uma chamada
GETvia HTTPS. -
Transforma a resposta XML recebida em JSON usando o componente XSLT.
-
O parâmetro
transformDirection: XML2JSONindica a direção da transformação, que neste caso é de XML para JSON.
-
-
Converte o JSON em um objeto Java.
-
Por fim, define o cabeçalho
Content-Typecomoapplication/jsonpara indicar o tipo da resposta.
-
Script |
Diagrama |
|
|
XSLT
-
Descrição: o componente XSLT é utilizado para transformar documentos XML usando uma folha de estilo XSLT, permitindo que os dados sejam convertidos para diferentes formatos ou estruturas.
-
Exemplo
-
O fluxo começa com uma requisição
POSTno endpoint/source-xslt. -
O EIP
toDindica que o fluxo deve direcionar a execução para uma URI dinâmica. -
A rota então faz uma requisição
GET, obtendo uma resposta em XML. -
Depois, transforma a resposta XML em JSON utilizando um arquivo XSLT:
response_to_json.xslt.
-
Script |
Diagrama |
|
|
Share your suggestions with us!
Click here and then [+ Submit idea]