Kāpēc nav nepieciešams konfigurēt standarta JSP tagus web.xml failā?
sobes.tech AI
Atbilde no AI
Standarta JSP tagi, piemēram, <jsp:useBean>, <jsp:include>, <jsp:forward>, <jsp:getProperty>, <jsp:setProperty>, <jsp:param> un citi, ir JavaServer Pages Standarta Tagu Bibliotēka (JSTL), ir daļa no JSP specifikācijas. Šīs tagu bibliotēkas vienmēr ir pieejamas servletu konteinerī (piemēram, Tomcat, Jetty utt.), kas atbalsta JSP specifikāciju.
Konfigurācija web.xml (dēšanas aprakstā web-app) parasti ir nepieciešama:
- Servletu un to URL maršrutu deklarēšanai.
- Filtru un to maršrutu deklarēšanai.
- Notikumu klausītāju iestatīšanai.
- Lietojumprogrammas konteksta parametru definēšanai.
- Lietotāja tagu bibliotēku konfigurācijai (neiekļautas standarta JSTL sastāvā), norādot TLD faila atrašanās vietu (Tag Library Descriptor).
- Sesiju, kļūdu lapu, sveiciena lapu u.c. iestatījumiem.
Standarta JSP tagi un JSTL bibliotēkas (core, fmt, sql, xml) jau ir "zināmas" un apstrādātas pašas JSP dzinēja. To apstrādi ir integrējusi JSP realizācija. Tādēļ nav nepieciešams tos skaidri deklarēt web.xml vai lejupielādēt papildu JAR failus (īpaši vecākās konteineru versijās vai ja vēlaties izmantot konkrētu JSTL versiju, kas atšķiras no iebūvētās). Standarta tagu TLD faili (piemēram, jsp.tld JAR failos JSTL) vai jau ir konteinerā, vai konteineris zina, kā tos atrast bez skaidras norādes web.xml.
Standarta tagu izmantošanai JSP tiek izmantota direktīva taglib:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Šī direktīva norāda JSP dzinējam izmantot JSTL Core bibliotēku ar prefiksu c. uri atribūts norāda uz unikālu identifikatoru tagu bibliotēkai, ko jau zina konteineris.