如果在Scala中字符串为空“”,则ObjectMapper readValue(content:String)给出MismatchedInputException

时间:2018-12-19 18:15:30

标签: scala objectmapper is-empty

使用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)

0 个答案:

没有答案