我正在创建一个扩展 CamelTestSupport 的测试。我正在使用 Apache Camel 3.10。我尝试在 createRouteBuilder 的测试中设置 JavaTimeModule(),使用
public ObjectMapper produceObjectMapper() {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.registerModule(new JavaTimeModule());
objectMapper.registerModule(new VavrModule());
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
return objectMapper;
}
@BeforeEach
void initTest() {
this.objectMapper = new ObjectMapperConfiguration().produceObjectMapper();
}
@Override
protected RoutesBuilder createRouteBuilder() {
InputRoute inputRoute = new InputRoute("direct:start","direct:dlq");
inputRoute.setContext(this.context);
inputRoute.bindToRegistry("platformTransactionManager", platformTransactionManager);
inputRoute.bindToRegistry("notificationRepository", notificationRepository);
inputRoute.bindToRegistry("objectMapperJackson",objectMapper);
return inputRoute;
}
这个对象映射器 但我得到这个错误:
Java 8 日期/时间类型
不受支持 默认:添加模块 “com.fasterxml.jackson.datatype:jackson-datatype-jsr310”启用 处理java.time.ZonedDateTime
这个ZoneDateTime在项目中是起作用的,也是在SpringBootTest中。但不是在 CamelTestSupport 测试中。有什么想法吗?