un
un
de
de
de
Modelo
Todas las aplicaciones software dejan a los usuarios manipular ciertos
datos que proceden de una realidad sobre la que se pretende actuar,
como supermercados, itinerarios de viaje, o cualquier dato requerido
en un dominio problemtico particular.
A estos datos en estado puro, que representan el estado de la realidad
se les llama modelo: modelan la parte de la realidad sobre la que se
desea actuar.
Modelo
El modelo, pues, es el objeto que representa y trabaja directamente
con los datos del programa: gestiona los datos y controla todas sus
transformaciones.
El modelo no tiene conocimiento especfico de los diferentes
controladores y/o vistas, ni siquiera contiene referencias a ellos. Es el
propio sistema el que tiene encomendada la responsabilidad de
mantener enlaces entre el modelo y sus vistas, y notificar a las vistas
cundo deben reflejar un cambio en el modelo.
Modelo
En nuestro ejemplo userLoginBean.java
Modelo
Este modelo a utilizar en la aplicacin se le comunica al sistema JSF
mediante el fichero faces-config.xml, donde se detalla la parte de
managed-bean, donde se aprecia un bean denominado
userLoginbean, que est recogido en la clase userLoginBean, y con
un mbito de sesin:
Vista
La vista es el objeto que maneja la presentacin visual de los datos
gestionados por el Modelo. Genera una representacin visual del
modelo y muestra los datos al usuario. Interacciona con el modelo a
travs de una referencia al propio modelo.
En el ejemplo bsico, la vista est manipulada a travs de las pginas
JSF, es decir, mediante las pginas index.jsp y hola.jsp. JSF conecta
la vista y el modelo. Como ya se ha visto, un componente de la vista
puede ligarse a un atributo de un bean del modelo, como:
<h:inputText value="#{usuario.nombre}"/>
Vista
Controlador
El controlador es el objeto que proporciona significado a las rdenes
del usuario, actuando sobre los datos representados por el modelo.
Entra en accin cuando se realiza alguna operacin, ya sea un cambio
en la informacin del modelo o una interaccin sobre la Vista. Se
comunica con el modelo y la vista a travs de una referencia al propio
modelo.
Adems, JSF opera como un gestor que reacciona ante los eventos
provocados por el usuario, procesa sus acciones y los valores de estos
eventos, y ejecuta cdigo para actualizar el modelo o la vista.
Controlador
Retomando el ejemplo bsico, una parte del controlador la recogen las
lneas de cdigo del fichero inicio.jsp que capturan los datos del
nombre de usuario, su contrasea, y el botn de Iniciar
Controlador
Por otro lado, est el control para las reglas de navegacin, contenido
en el fichero faces-config.xml, donde por ejemplo, se indica que
estando inicio.jsp, si ocurre una accin denominada login,
navegaremos a la pgina hola.jsp, esta accin comentada, es un
string que se declara en la vista como un atributo del botn de aceptar
que aparece en el formulario del ejemplo bsico. El fichero facesconfig sera el siguiente:
<navigation-rule>
<from-view-id>/index.jsp</from-view-id>
<navigation-case>
<from-outcome>login</from-outcome>
<to-view-id>/hola.jsp</to-view-id>
</navigation-case>
</navigation-rule>
Java Server Faces
Controlador
y la parte de la vista que establece la accin que activa la navegacin
es:
<h:commandButton value="Aceptar" action="login"/>