primefaces的按钮引发的NullPointerException异常

来源:互联网 发布:要不要退学复读知乎 编辑:程序博客网 时间:2024/06/05 03:53

在项目中使用primefaces按钮:<p:commandButton>时,进入页面就会提示空指针异常,当把<p:commandButton>改成<h:commandButton>后,又没有提示了,可见问题出的primefaces的实现处理上,于是便给<p:commandButton>增加ID属性,但是问题依然没有解决:

<p:commandButton id="cb1" value="submit" action="/index" /> 

当改成 

<p:commandButton id="cb1" value="submit" /> 

后,现象仍在。此时,感觉这是primefaces的一个BUG了,于是,到处查询搜索,没有找到办法。在看到别人使用<p:commandButton>时,都增加了actionListener属性,而他们没有反映有空指针异常,于是,我修改代码如下:

<p:commandButton id="cb1" value="submit" actionListener="#{publishMB.publish}" />

再运行时,就没有提示了,于是我继续试验了多种情形,包括action,于是初步清楚了,<p:commandButton>并不支持直接在action中写入视图,而必须通过后台bean方法。而在jsf的规范中是可以的,可知,primefaces在实现JSF规范时,存在BUG。