首页 > 代码库 > 自己挖坑自己跳 之JsonMappingException: (was java.lang.NullPointerException) (through reference chain:)

自己挖坑自己跳 之JsonMappingException: (was java.lang.NullPointerException) (through reference chain:)

  在Web项目中,我们经常会设计一些与界面相对应的JavaBean作为Entity,而为了兼容前台传入的空值,有些字段我们会用包装类型而不是基本类型。可是往往我的Entity已经设计完成,很多时候我们会在原来的Entity基础上修改字段返回值类型,而不是删去重写。于是问题就来了,一些大意的同学仅仅把属性的基本类型(如long)改为包装类型(如Long),而并没有将setter/getter的类型一起修改。

  这种情况会报错,而且报的错经常会让人摸不着头脑。下面列举了一种情况,是利用com.fasterxml.jackson将Entity序列化为Json字符串时出现上述疏忽报的错误:

com.fasterxml.jackson.databind.JsonMappingException: (was java.lang.NullPointerException) (through reference chain: Student["sid"])

  我的Entity如下:

public class Student {	private Long sid;	private String name;	public long getSid() {		return sid;	}	public void setSid(long sid) {		this.sid = sid;	}	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}}

  这种Entity的写法会在不同场合报不同的错误,本文仅列出这一种情况,后续遇到再补充。

  共勉!

 

Edit by Jimmy

2014.09.18

 

自己挖坑自己跳 之JsonMappingException: (was java.lang.NullPointerException) (through reference chain:)