How to integrate the Jaxb2Marshaller in the Spring integration route?

696 Views Asked by At
  1. Created the Jaxb2Marshaller object.
  2. Need to convert a java POJO to XML (Marshalling).

Need help in integrating Jaxb2Marshaller in the Integration Route.

Code flow:-

@Bean
    public IntegrationFlow flow() throws JAXBException {
        return from(...).
                .enrichHeaders(...)
                .handle(...)
                .transform(processor()::generateXml)
                .channel(...)
                               .get();
    }

How can I add Jaxb2Marshaller in transform() step?

1

There are 1 best solutions below

3
Artem Bilan On BEST ANSWER

There is an out-of-the-box transformer to use:

.transform(new MarshallingTransformer(jaxbMarshaller()))

https://docs.spring.io/spring-integration/docs/current/reference/html/xml.html#xml-marshalling-transformer

How to create a Jaxb2Marshaller you can consult Spring Framework docs:

https://docs.spring.io/spring/docs/current/spring-framework-reference/data-access.html#oxm-jaxb2