我还没有弄清楚如何在不使用@PostContruct方法和初始化@页面创建的情况下动态调用/调用方法。
目前,我只是想让Primeface p:poll示例正常工作。我现在已将该方法放在自己的类中,以保持其清洁和简单。看起来像这样:
@ManagedBean(name="counterBean")
@SessionScoped
public class CounterBean implements Serializable {
private int count;
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public void increment(ActionEvent actionEvent) {
setCount(getCount() + 1);
}
}
然后是xhtml代码:
<h:form>
<h:outputText id="txt_count" value="#{counterBean.count} " />
<p:poll interval="3" listener="#{counterBean.increment}" update="txt_count"/>
</h:form>
netbeans中的Intellisense告诉我#{counterBean.increment}的“增量”部分是“未知属性”,即它无法找到该方法。那么我怎样才能让JSF从xhtml中识别并调用这个方法呢?
答案 0 :(得分:1)
经过一段时间的努力,p:poll组件在从primefaces demo&amp; amp;手册。将p:poll侦听器更改为actionListener:
<h:form>
<h:outputText id="txt_count" value="#{counterBean.count} " />
<p:poll interval="3" actionListener="#{counterBean.increment}" update="txt_count"/>
</h:form>
同时确保您的html页面/模板被<f:view contentType="text/html">
标记
希望这对某人和某人有所帮助感谢BalusC在调试中的帮助。