Marshal

O EIP Marshal converte o formato interno (objetos ou estruturas) para um formato externo (como JSON ou XML) para comunicação ou armazenamento. Por exemplo, ele pode converter um objeto Java em uma representação JSON ou XML.

Diferença entre Marshal e Unmarshal

Marshal e Unmarshal são processos fundamentais para a manipulação de dados, permitindo a interoperabilidade entre sistemas.

  • Marshal: é o processo de transformar dados do formato interno do Camel para um formato externo padronizado, como JSON, XML, CSV, ou outros. Essa conversão é essencial para integrar o fluxo com sistemas externos, enviar mensagens a APIs, ou armazenar informações em arquivos de forma estruturada.

  • Unmarshal: trata-se do processo inverso, onde dados recebidos em um formato externo (por exemplo, JSON, XML, CSV) são convertidos para o formato interno utilizado pelo Camel. Esse passo é necessário para que as mensagens possam ser manipuladas, processadas ou roteadas dentro do fluxo de integração do Camel.

Exemplos

  • CSV

    • A mensagem será convertida para csv.

    • Nenhum parâmetro adicional é necessário.

- marshal:
    csv: {}
  • JSON

    • A mensagem será convertida para json.

    • Será usada a biblioteca Jackson para serializar o corpo da mensagem.

- marshal:
    json:
      library: Jackson
  • XML

    • A mensagem será convertida para XML.

    • O jacksonXml utiliza a biblioteca Jackson, mas também existe o formato genérico xml.

- marshal:
    jacksonXml: {}
- marshal:
    xml: {}
Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]