Primera página con ADF

Vamos a realizar una pagina con dos inputText y hacer una pantalla de logueo. Si se hace correcta ir a una segunda página y si no es válida sacar un mensaje por el FacesContext.

Para realizar este ejemplo simplemente tenemos que ir añadiendo los componentes en la página, colocarlos a nuestro gusto, y darle el comportamiento deseado. Dependiendo del IDE que utilizemos para ADF, el código de estos componentes se nos generará solo, o tendremos que escribirlo nosotros mismos. Una buena idea al empezar sería descargar el IDE gratuito de Oracle, JDeveloper, e ir investigando el código que generan los componentes.

Vamos a usar un componente llamado CorePanelForm para englobar en el a los dos cuadros de texto y al boton de envio del formulario. Vamos a crear también un objeto CoreMessages para sacar por la ventana un mensaje de error si el usuario no se loguea correctamente. Por tanto en la clase java tendremos que añadir los siguientes elementos:
 
private CoreMessages messages1;
private CorePanelForm panelForm1;
private CoreInputText inputText1;
private CoreInputText inputText2;
private CoreCommandButton commandButton1;

A estos objetos le añadiremos sus respectivos metodos get/set. Ahora lo que habría que hacer sería asociarle una acción al boton de envio del formulario, esto se puede hacer asociandole en la propiedad “Action” del boton el nombre del metodo mediante EL, y crearlo a mano en la clase java.

Un ejemplo de una accion que le prodríamos asociar al botón sería el siguiente:

public String enviarLogin(){
    
    if(getInputText1().getValue().equals("siglo") &&
    getInputText2().getValue().equals("siglo"))
    return "loginCorrecto";
    
    FacesContext.getCurrentInstance().addMessage(“Login Incorrecto”,
    new FacesMessage(FacesMessage.SEVERITY_WARN,
    "Login Incorrecto","Login Incorrecto"));
    
    return null;
}

Devolvemos un null pero podríamos haber devuelto cualquier otra cadena, mientras no este en la regla de navegación del faces-config irá dirigida la petición contra la página actual.

Lo único que quedaría por hacer sería añadir en el faces-config la regla de navegación:

<navigation-rule>
    <navigation-case>
        <from-outcome>
            loginCorrecto
            <to-view-id>/ejemplo2.jspx
    </navigation-case>
</navigation-rule>

Ya estaría completado este ejemplo.

Tags:

Comments are closed.