JSF2.2.1 +表单绑定+ ViewScoped麻烦

时间:2014-01-01 19:46:13

标签: jsf-2 binding mojarra jsf-2.2 view-scope

我有以下JSF页面尝试标准JSF2.2.1和Primefaces4 CommandLink:

<h:form id="test3" binding="#{test3.hf}">
    <h:commandLink value="Test3" action="#{test3.print('PROVA.....')}" />
    <br />
    <p:commandLink value="PFtest" action="#{test3.print('PROVA.....')}" />
</h:form>

...以及相对的 ViewScoped 托管bean:

@ManagedBean(name="test3")
@ViewScoped
public class Test3 implements Serializable {
    HtmlForm hf;    

    public Test3() {
        super();
    }

    public HtmlForm getHf() {
        return hf;
    }
    public void setHf(HtmlForm hf) {
        this.hf = hf;
    }

    public String print(String text) {
        System.out.println(text + " " + System.currentTimeMillis());
        System.out.println(hf.getChildren().size());
        return null;
    }

}

奇怪的是,点击两个CommandLink中的一个,打印方法被调用两次 !!! 如果我避免使用表单绑定或者向CommandLink组件添加其他绑定,则不会出现此问题。

你怎么看? 感谢。

1 个答案:

答案 0 :(得分:0)

由Mojarra 2.2.5解决。 谢谢你的贡献。