PrimeFaces Datatable更新

时间:2012-06-12 16:01:49

标签: ajax jsf primefaces

我的网页代码

    <h:form id="formTipoGeneracion"
            enctype="multipart/form-data">
        <p:growl id="mensajesCargaArchivos"
                 showDetail="true"/>
        <p:fileUpload mode="simple"
                      value="#{generador.archivoSeleccionado}"/>
        <br/>
        <p:commandButton value="Agregar"
                         ajax="false"
                         action="#{generador.doAgregarArchivo}"/>
        <p:dataTable id="dtArchivos"
                     var="archivo"
                     emptyMessage="No se ha cargado ningun archivo en el servidor."
                     value="#{generador.archivos}">
            <p:column>
                <f:facet name="header">
                    <h:outputText value="Nombre del archivo"/>
                </f:facet>
                <h:outputText value="#{archivo}"/>
            </p:column>
            <p:column>
                <f:facet name="header">
                    <h:outputText value="Quitar archivo?"/>
                </f:facet>
                <p:commandLink value="[  X  ]" update="@form"
                               action="#{generador.doEliminarArchivo(archivo)}"/>
            </p:column>
        </p:dataTable>
    </h:form>

我有一个非常大的疑问,当我<p:commandLink ... update="@form" .../>表正确地更新其数据但是如果我有<p:commandLink ... update="dtArchivos" .../>(而不是渲染整个表单只是呈现DataTable)表上的信息没有更新。

为什么会这样? 工具:PrimeFaces 3.3,Mojarra 2.1.6,Tomcat 7.0.14 Bean的范围:ViewScope

0 个答案:

没有答案