¿Por qué no es necesario configurar las etiquetas JSP estándar en el archivo web.xml?
sobes.tech AI
Respuesta de la IA
Las etiquetas JSP estándar, como <jsp:useBean>, <jsp:include>, <jsp:forward>, <jsp:getProperty>, <jsp:setProperty>, <jsp:param> y otras, son parte de la especificación JSP y de la Biblioteca de Etiquetas Estándar de JavaServer Pages (JSTL). Estas bibliotecas de etiquetas siempre están disponibles en el contenedor de servlets (como Tomcat, Jetty, etc.), que soporta la especificación JSP.
La configuración en web.xml (el descriptor de despliegue web-app) generalmente es necesaria para:
- Declarar servlets y sus mapeos de URL.
- Declarar filtros y sus mapeos.
- Configurar escuchas de eventos.
- Definir parámetros de contexto de la aplicación.
- Configurar bibliotecas de etiquetas personalizadas (que no forman parte de JSTL estándar), indicando la ubicación del archivo TLD (Descriptor de Biblioteca de Etiquetas).
- Configurar sesiones, páginas de error, páginas de bienvenida, etc.
Las etiquetas JSP estándar y las bibliotecas JSTL (core, fmt, sql, xml) ya "son conocidas" y son procesadas por el motor JSP del contenedor. Sus manejadores están integrados en la implementación de JSP. Por lo tanto, no es necesario declararlas explícitamente en web.xml ni descargar archivos JAR adicionales (salvo en versiones antiguas del contenedor o si deseas usar una versión específica de JSTL diferente a la integrada). Para las etiquetas estándar, sus archivos TLD (por ejemplo, jsp.tld dentro de archivos JAR de JSTL) ya están en el contenedor o el contenedor sabe cómo encontrarlos sin necesidad de indicarlos explícitamente en web.xml.
El uso de etiquetas estándar en JSP se realiza mediante la directiva taglib:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Esta directiva indica al motor JSP que use la biblioteca JSTL Core con el prefijo c. El atributo uri apunta a un identificador único para la biblioteca de etiquetas, que el contenedor ya reconoce.