我正在尝试使用 JSF,场景如下:
我有一个会话范围的托管 bean
@ManagedBean(name = "rand")
@SessionScoped
我已经声明了以下内容(除其他外):
private UIOutput uiOutput;(plus getter and setter)
在我的 facelets 页面中,我有
<h:outputLabel for="userGuess" binding="#{rand.uiOutput}"
value="#{rand.listSize}" rendered="false"/>
页面上有一个按钮,以及按钮的操作方法以及我拥有的其他内容
this.uiOutput.setRendered(true);
但它似乎不起作用,元素不会被渲染。
如果以渲染方式启动它并更改属性(将其设置为 true 或 false),则它可以工作。我怀疑这与以未渲染开始的元素未绑定到我在托管 bean 中的 uiOutput 对象这一事实有关。我怎样才能让它在这种情况下工作?