使用Jackson ObjectMapper转换响应时,如果响应主体为空字符串,则获取com.fasterxml.jackson.databind.exc.MismatchedInputException:由于输入结束,没有内容要映射 在[来源:(String)“”;行:1,列:0] 而mapper.readValue(response)
在Scala中,发布请求中的响应为空,并尝试通过ObjectMapper对其进行解析。
从ObjectMapper:
def readValue[T: Manifest](content: String): T = {
readValue(content, constructType[T])
}
呼叫方式:
val m = new ObjectMapper() with ScalaObjectMapper
m.readValue[String](httpresponse.body) // httpresponse.body=""
出现以下错误:- com.fasterxml.jackson.databind.exc.MismatchedInputException:由于[Source:(String)“”;行:1,列:0]
已经为映射器提供了以下配置:-
m.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
m.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
m.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true)
m.enable(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT)