Actualización de tabla de datos de PrimeFaces
Frecuentes
Visto 2,830 veces
0
Tengo este código para mi página web.
<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>
tengo una duda muy grande, cuando tengo <p:commandLink ... update="@form" .../>
la tabla actualiza sus datos correctamente pero si tengo <p:commandLink ... update="dtArchivos" .../>
(en lugar de representar todo el formulario, simplemente represente DataTable), la información de la tabla no se actualiza.
¿Por qué está pasando esto? Herramientas: PrimeFaces 3.3, Mojarra 2.1.6, Tomcat 7.0.14 Alcance de Bean: ViewScope
0 Respuestas
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas ajax jsf primefaces or haz tu propia pregunta.
¿Por qué estás usando ajax="false"? ¿Qué pasa si quitas el atributo? - perissf
Estoy usando
ajax=false
en lacommandButton
porque estoy usando un formulario de carga simple (la etiqueta html muy básica), y buscando en Internet encontré que cuandomode="simple"
ese atributo debe establecerse en falso. Si lo elimino no sube el archivo. - BRabbit27Creo que el problema está ahí. Con update="dtArchivos" estás usando ajax detrás de escena. - perissf
Cuando deshabilito ajax para
p:commandButton
¿Deshabilita ajax para todo el formulario? Por otro lado, cuando usoupdate='@form'
¿No usa ajax también? - BRabbit27