Taller 9- Editar
Agregaremos la opción de editar un registro en el Controller
public String edit() {
try {
repositoryRevisionHistory.save(revisionHistoryServices.getRevisionHistory(persona.getCedula(),
"myusername",
"update", "persona", personaRepository.toDocument(persona).toString()));
personaRepository.update(persona);
JsfUtil.successMessage("Se actualizo el documento");
} catch (Exception e) {
JsfUtil.errorDialog("edit()", e.getLocalizedMessage());
}
return "";
}En el formulario list.xhtml debemos seleccionar un documento y pasarlo a un formulario nuevo con todos los datos.
view.xhtml
Tenemos varias formas de real izarlo
En la misma pagina mediante un dialogo
En otra pagina usando el mismo controller
En otra pagina usando un controller nuevo
Creamos una pagina nueva llamada view.xhtml
Agregamos dos etiquetas y dos cajas de texto
Asociados al enity dentro del Controller
Agregar botones para regresar al index y para invocar la pagina list
Ejemplo con formulario y el mismo controller.
Si definimos el alcance del Controller como @ViewScoped, debemos guardar el valor seleccionado.
Creamos un método llamado go(Persona persona) y guardamos el entity seleccionado.
Jmoordb nos ofrece la clase JmoordbContext en la cual podemos guardar objetos en la sesión actual.
Modificar el init()
En la pagina list.xhtml
Agregar un nuevo botòn

Crear el archivo view.xhtml
al dar clic en Editar nos muestra la pagina de EDITAR

Cambiamos el nombre y damos clic en el botòn Edit

Si presionamos el botón list para regresar al listado, observamos el registro actualizado

Recuerde que podemos ver el historial de revisiones

Podemos hacer una búsqueda del documento persona con id=3
Ejecutar desde la consola
mongo
use practica_history
db.revisionhistory.find({"document":"persona","id":"3"}).pretty()
Podemos ver el historial de cambios

Last updated
Was this helpful?