Primefaces CommandButton在DataTable中不起作用

时间:2014-04-28 18:23:15

标签: ajax jsf primefaces

我在数据表之外有一个primefaces commandButton,它可以正常运行。在dataTable中,我有完全相同的commandButton,但是当点击dataTable中的一个时,它不会调用actionListener:

 <h:body>
    <h:form>
        <p:messages autoUpdate="true" showDetail="true" closable="true"/>
        <p:accordionPanel >  
            <p:tab title="Visualize data">
                <p:commandButton value="Add Domain" actionListener="#{TripleStoreController.addDomain('Domain')}"
                                 update="DomainSkillTable"/>
                <p:dataTable 
                    id="DomainSkillTable"
                    var="result"
                    value="#{TripleStoreController.domainResults}"
                    rowKey="#{result}">
                    <p:column>
                        #{result}
                    </p:column>
                    <p:column>
                        <p:commandButton value="Add Domain" actionListener="#{TripleStoreController.addDomain('Domain')}"
                                         update="DomainSkillTable"/>
                    </p:column>
                </p:dataTable>
            </p:tab>
        </p:accordionPanel>  
    </h:form>
</h:body>

2 个答案:

答案 0 :(得分:0)

它应该是有效的。 没有错误,我只是复制并在我的java类中为同一个方法TripleStoreController.addDomain('Domain')创建了一个方法签名,如public void addDomain(String s)和方法。 即使我通过命令按钮获取值传递为&#39;域&#39;在我的背豆。

答案 1 :(得分:-1)

就我而言,我只是将bean从@RequestScoped变为@ViewScoped,就解决了我的问题。