我下面有一个actionListener
可以正常工作:
<p:commandButton actionListener="#{demandasController.saveNew}" ... />
saveNew
方法是:
public void saveNew(ActionEvent event) {
Situacao situacao = new Situacao();
situacao.setIdSituacao(4);
this.getSelected().setSituacao(situacao);
super.saveNew(event);
}
如果我使用上面的代码,它就可以正常工作。但是,如果我尝试...
public void saveNew(ActionEvent event) {
Situacao situacao = new Situacao();
Date currentDate = new Date();
if (this.getSelected().getDtInicial().after(currentDate)) {
situacao.setIdSituacao(4);
} else {
situacao.setIdSituacao(5);
}
this.getSelected().setSituacao(situacao);
super.saveNew(event);
}
...它返回一个NullPointerException。
有人知道为什么会这样吗?和/或我该如何解决?
谢谢。
答案 0 :(得分:0)
从错误消息NullPointerException
来看,从最初的代码有效但第二批代码无效,以下代码必须返回null。
this.getSelected().getDtInicial()
然后.after(currentDate)
是对null的操作,它导致null指针。