首先上后端消息处理的一段代码:
这里有三个参数,第一个引号的地方应该填message标签for属性的内容,记住不要填ID,我没看过源码,但是我猜测这个消息应该是发给一个UI组件,然后由组件来派发消息的, FacesMessage 里面后面两个参数一个是消息内容,一个是消息明细说明(这个显示与否是由showDetail=”true”来决定的 ),好了,说完这个再上一段代码
|
|
看看这段代码,比较有意思,首先说说
将会是什么情况呢?
试试看,结果是form外的message没有反应,而form内的倒是打印出了消息.
还有一点要说明的就是<p:messages/>
这个是会打印出form里面所有的消息,也就是说<p:message for="test"/>
和<p:message for="form"/>
打印出来的消息都会在<p:messages/>
里面也打印出一份,有点冒泡的味道,也许实际实现就是冒泡的(没看源码,只是猜测,错了别拍我).
接下来是说说<p:message for="form"/>
这个,这个for属性很有用,在讲addMessage方法的时候就说过第一个参数,和这个参数是对应的,这样消息就可以打印到你需要地方了.
最后就是消息的级别,这个请参考google,我不便转发,嘿嘿