0
看到调用writeValueAsString()
马歇尔为JSON定期时抛出周期性异常......但重试的时候,他们总是工作...杰克逊writeValueAsString()抛出JsonMappingException定期
这是由杰克逊的API(v2.7.5)抛出在解析时/编组(非空)的Java日期值JSON ...
这里是我们的配置,它定义的类水平,在多个线程重用/请求
private ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
和完整堆栈跟踪。 ..
com.fasterxml.jackson.databind.JsonMappingException: (was java.lang.ArrayIndexOutOfBoundsException) (through reference chain: MyIndex["createdAt"])
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:232)
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:197)
at com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:186)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:640)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:152)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:541)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:632)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:152)
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:114)
at com.fasterxml.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:2811)
at com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:2268)
我不知道我怎么看这是一个重复,@JarrodRoberson 。他有一些使用Jackson序列化为JSON的对象。杰克逊抛出了这个例外,而不是他的代码,那么他会在哪里检查他的索引? – DavidS
'ObjectMapper'在序列化时是线程安全的。你的POJO是在线程之间共享的吗? –
你在使用杰克逊本的最新版本吗?它看起来像过去一些ArrayIndexOutOfBounds异常已被修复... – DavidS