JSF - Arquitectura

La tecnología JSF es un marco para desarrollar, crear componentes de interfaz de usuario del lado del servidor y usarlos en una aplicación web. La tecnología JSF se basa en la arquitectura Model View Controller (MVC) para separar la lógica de la presentación.

¿Qué es el patrón de diseño MVC?

El patrón de diseño MVC diseña una aplicación usando tres módulos separados:

S. No Módulo y descripción
1

Model

Transporta datos e inicio de sesión

2

View

Muestra la interfaz de usuario

3

Controller

Maneja el procesamiento de una solicitud.

El propósito del patrón de diseño MVC es separar el modelo y la presentación, lo que permite a los desarrolladores enfocarse en sus habilidades básicas y colaborar más claramente.

Los diseñadores web deben concentrarse solo en la capa de vista en lugar de en la capa de modelo y controlador. Los desarrolladores pueden cambiar el código del modelo y normalmente no necesitan cambiar la capa de vista. Los controladores se utilizan para procesar las acciones del usuario. En este proceso, el modelo de capa y las vistas se pueden cambiar.

Arquitectura JSF

La aplicación JSF es similar a cualquier otra aplicación web basada en tecnología Java; se ejecuta en un contenedor de servlets de Java y contiene:

  • Componentes de JavaBeans como modelos que contienen funcionalidad y datos específicos de la aplicación

  • Una biblioteca de etiquetas personalizadas para representar controladores y validadores de eventos

  • Una biblioteca de etiquetas personalizadas para representar componentes de la interfaz de usuario

  • Componentes de la interfaz de usuario representados como objetos con estado en el servidor

  • Clases auxiliares del lado del servidor

  • Validadores, controladores de eventos y controladores de navegación

  • Archivo de recursos de configuración de la aplicación para configurar los recursos de la aplicación

Hay controladores que se pueden utilizar para realizar acciones del usuario. Los autores de páginas web pueden crear la interfaz de usuario y los beans administrados pueden utilizar la lógica empresarial.

JSF proporciona varios mecanismos para renderizar un componente individual. Depende del diseñador de la página web elegir la representación deseada, y el desarrollador de la aplicación no necesita saber qué mecanismo se utilizó para representar un componente JSF UI.