- Si nuestra acción no produce una redirección a otra página no debemos usar ni <s:link> ni <s:button> ya que aunque indiquemos propagation="end", esto sólo introduce en la URL un parámetro que indica que se debe terminar la conversación y es en la navegación a la vista destino cuando se lee dicho parámetro y se termina la conversación. En su lugar usaremos <h:commandbutton>,<a4j:commandbutton>, <h:commandlink> o <a4j:commandlink> con la etiqueta <s:conversationpropagation type="end"> anidada.
viernes, 29 de octubre de 2010
Seam: Controlar conversaciones en la vista
Si queremos terminar una conversación mediante un enlace o botón hay que tener en cuenta lo siguiente:
lunes, 25 de octubre de 2010
JSF: Pasar acción como parámetro en panel modal
El escenario es el siguiente:
- Tengo un modal panel con un backbean/controlador de dicho moda panel
- Este modal panel se va a usar en distintas vistas
- Tiene una misma acción que en cada vista ejecuta un método distinto
Solución 1:
- Crear en el controlador un método para cada acción
- Enviar como parámetro o en cualquier propiedad del controlador la acción que se debe ejecutar
- En el modal panel deben existir un commandLink por cada acción y usar el parámetro anterior
para determinar cual renderizar
Solución 2(a probar):
- Pasar la acción como parámetro y usar la clase org.jboss.seam.core.Expressions para invocar el método.
lunes, 18 de octubre de 2010
JSF: Método para saber si una petición es postback
protected boolean isPostBack() {
FacesContext facesContext = FacesContext.getCurrentInstance();
return facesContext.getRenderKit().getResponseStateManager().isPostback(facesContext);
}
Suscribirse a:
Entradas (Atom)