|
今天用JSF的时候用<h:commandButton value="提交" action="#{temp.exec}" rendered="#{temp.num>0}"/>这个标记,当我想用backing-bean控制它的显示的时候发现他根本不能提交给backing-bean的方法,这让我百思不得其解。rendered属性我用过N多回了,怎么就这次出错了呢 google了半天也没有找到结果,在我的群里问也不没有人知道,郁闷。我尝试如果把rendered="#{temp.num>0}" 变成 rendered="#{1<2}" 这样就没问题了,这么一来我想应该是backing-bean的作用域的问题,于是我就把temp类作用域由原来的request改为session果然好用了,原来,commandButton这个标记也向dataTable一样需要session作用域,是在提交表单的时候检查一下,如果是这样那么我想UICommand的子类都应该是这样,像commandButton、commandLink 都是这样,但是我这里不需要backing-bean是session作用的,也可以用JSTL中的<c:if test="${temp.num>0}" />这样的判断,我想也能够解决!
|