Establecer la página de login y la de no-conversación mediante EL

Para evitar que el Eclipse detecte errores en el fichero pages.xml es necesario estar actualizado a la versión FundeWeb 2.0.23 Win64 o posterior.

Con esta modificación podemos seleccionar la pagina de login de la aplicación o la pagina a navegar cuando hay algún error en el que no se puede recuperar la conversación indicada en la petición de manera dinámica, mediante una expresión EL.

Veamos un ejemplo,donde indicamos que la pagina de login se obtiene al llamar al método getLoginViewId() del bean loginManager:

Configuración del fichero pages.xml.

<pages xmlns="http://jboss.org/schema/seam/pages"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://jboss.org/schema/seam/pages http://jboss.org/schema/seam/pages-2.3.xsd"
 
       no-conversation-view-id="/${viewid.pagina.principal}"
       login-view-id="#{loginManager.loginViewId}">
 
   ...
</pages>

Implementación del bean loginManager, en el ejemplo el bean tiene ámbito aplicación (@Scope(ScopeType.APPLICATION)), pero puede tener cualquiera.

package es.um.atica.prueba.backbeans;
 
import org.jboss.seam.ScopeType;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
 
@Name("loginManager")
@Scope(ScopeType.APPLICATION)
public class LoginManager {
 
    public String getLoginViewId() {
        return "/login.xhtml";
    }
 
}

Para seguir teniendo paginas de login diferentes, dependiendo del entorno, como por ejemplo, en el entorno local, y poder acceder a la autenticación con Radius. Tendremos que utilizar Componente para Cargar Propiedades y Ficheros de Propiedades.


JUAN MIGUEL BERNAL GONZALEZ 2017/05/11 09:56

  • fdw2.0/fundeweb2.0/gt/modificaciones_jboss_seam/loginviewid_noconversationviewid_el.txt
  • Última modificación: 07/11/2017 10:46
  • (editor externo)