fasterxml: Unrecognized token '***': was expecting ('true', 'false' or 'null')

fasterxml: Unrecognized token ‘open’: was expecting (‘true’, ‘false’ or ‘null’)

  • 代码片段
public class Test {
    static final ObjectMapper ObjMpr = new ObjectMapper();

    public static void main(String[] args) throws Exception {
        String s = "open";
        String s1 = ObjMpr.readValue(s, String.class);
        System.out.println(s1);
    }
}
  • exception
Exception in thread "main" com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'open': was expecting ('true', 'false' or 'null')
 at [Source: java.io.StringReader@117c323d; line: 1, column: 9]
  • 错误原因 
    fasterxml无法对这个字符串进行判断,它的处理逻辑应该是先判断这个字符串是否是boolean,因为这个字符串并不是用双引号引起来的字符串。
  • 解决办法 
    String s = “open”;应改为String s = "\"open\"";,此时才可被fasterxml正确理解。

猜你喜欢

转载自qiaoshi.iteye.com/blog/2195450