Альтернатива устаревшему XmlJsonDataFormat в Apache Camel

В Apache Camel я пытался использовать XmlJsonDataFormat для быстрого преобразования из XML в JSON. Однако XMLJSON ( http://camel.apache.org/xmljson.html) устарел, поэтому я не уверен, что является лучшим способом сделать это преобразование, кроме создания процессора.

Кто-нибудь знает альтернативу XmlJsonDataFormat?

1 ответ

После некоторых попыток мне удалось получить то, что мне нужно, объединив Джаксба и Джексона для демаршалирования XML в POJO, а затем POJO в JSON. Как заметил noMad, я мог бы попробовать Dozer ( http://camel.apache.org/dozer.html), но у меня не было времени на это.

    JacksonDataFormat jacksonDataFormat = new JacksonDataFormat();
    jacksonDataFormat.setPrettyPrint(true);
    jacksonDataFormat.enableFeature(SerializationFeature.WRAP_ROOT_VALUE);

    from("file:src/main/resources/xml/in?noop=true").routeId("lixi-to-json-route").
        unmarshal(new JaxbDataFormat(JAXBContext.newInstance(ApplicationBatch.class))).
        marshal(jacksonDataFormat).
        to("file:src/main/resources/xml/out?fileName=${file:onlyname.noext}.json");

Maven зависимости

    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-jaxb</artifactId>
    </dependency>
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-jackson</artifactId>
    </dependency>
Другие вопросы по тегам