使用ssh框架开发遇到的空指针问题

小弟在ssh项目开发的遇到了空指针的问题,尚未发现解决方法,望各路大神相助
是在添加私信的时候出的问题,私信(privateletter)和用户(user)是多对一关系,已经在many-to-one关系后面加上了lazy=false
Action中:public String addprivateletter(){
revuser=privateletterService.userById(revuser.getUserId());
user=privateletterService.userById(user.getUserId());
privateletterService.addprivateletter( privateletter,user ,revuser);
return "Success";
}
其中privateletterService.addprivateletter( privateletter,user ,revuser);函数是传递user,revuser两个usertable型变量
DaoImpl中:
public void addprivateletter(PrivateletterTable privateletter,
UserInfoTable user, UserInfoTable revuser) {
privateletter.setUserInfoTableByUserId(user);
privateletter.setUserInfoTableByRevuserId(revuser);
this.getHibernateTemplate().save(privateletter);
}
我是在前台jsp页面上点击我的粉丝的头像让后将对应的userId和revuserId(就是粉丝的Id)传到addprivateletter函数,在DaoImpl层可以输出对应的userId和revuserId,但是privateletter.setUserInfoTableByUserId(user)函数报出空指针错误,大意是说user没有初始化,找几天没找出答案,还请大神帮帮忙。

阅读 4.8k
2 个回答

最后在同学的帮助下找到了问题,不是我之前想的那样。是在前面声明Privateletter的时候:

private PrivateletterTable privateletter;

报的空指针问题是privateletter,没有初始化成功,同学说他也遇到过这问题,后来我在addprivateletter的函数里new了一个Privateletter就可以了。可怜这个错让我停顿了好几天。

描述的太模糊了,没有前因后果,这样提问没办法回答啊

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进