mar*_*.ua 5 java apache-camel jackson spring-boot
我有一个 SpringBoot 应用程序,使用 Camel 进行路由。为了配置 jackson xmlMapper,我有以下 spring bean:
@Bean
public XmlMapper xmlMapper() {
XmlMapper xmlMapper = new XmlMapper();
xmlMapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
return xmlMapper;
}
Run Code Online (Sandbox Code Playgroud)
我希望 Camel 在解组收到的 POJO 时使用此映射器,如下所示:
from("direct:myRoute")
.marshal().jacksonxml()
.inOnly("activemq:outputQueue");
Run Code Online (Sandbox Code Playgroud)
但它不是这样工作的:编组 xml 中存在空字段。Camel 文档提供了使用 JacksonXMLDataFormat 的方法,如下所示:
JacksonXMLDataFormat format = new JacksonXMLDataFormat();
format.setInclude("NON_NULL");
from("direct:myRoute")
.marshal(format)
.inOnly("activemq:outputQueue");
Run Code Online (Sandbox Code Playgroud)
它可以工作,但每次编组某些内容时我都必须指定 dataFormat,并且解组会变得更加棘手。
Camel的xmlMapper有统一的配置方式吗?
| 归档时间: |
|
| 查看次数: |
805 次 |
| 最近记录: |