Sobes.tech
Junior

Ինչու է անհրաժեշտ չէ կարգավորել ստանդարտ JSP-թեգերը web.xml ֆայլում?

sobes.tech AI

Պատասխան AI-ից

Ստանդարտ JSP-տեգերը, ինչպիսիք են <jsp:useBean>, <jsp:include>, <jsp:forward>, <jsp:getProperty>, <jsp:setProperty>, <jsp:param> և այլ, մաս են կազմում JSP-специֆիկացիայի և JavaServer Pages Standard Tag Library (JSTL)-ի։ Այս տեգային գրադարանները միշտ հասանելի են սերվլետային կոնտեյներում (օրինակ, Tomcat, Jetty և այլն), որոնք աջակցում են JSP-специֆիկացիային։

web.xml-ում (տարածման նկարագրիչ web-app) կոնֆիգուրացիան սովորաբար անհրաժեշտ է հետևյալ համար՝

  1. Սերվլետների և նրանց URL-մապինգների հայտարարում։
  2. Ֆիլտրերի և նրանց մապինգների հայտարարում։
  3. Իրադարձությունների լսիչների կոնֆիգուրացիա։
  4. Դիմումի կոնտեքստային պարամետրերի սահմանում։
  5. Անհատական տեգային գրադարանների կոնֆիգուրացիա (որոնք չեն մտնում ստանդարտ JSTL-ի մեջ), նշելով TLD ֆայլի գտնվելու վայրը (Tag Library Descriptor)։
  6. Սեսիաների, սխալի էջերի, ողջույնի էջերի և այլն։

Ստանդարտ JSP-տեգերը և JSTL գրադարանները (core, fmt, sql, xml) արդեն «իմացան» և մշակվում են կոնտեյների JSP շարժիչով։ Նրանց կառավարիչները ինտեգրված են JSP-իրականացման մեջ։ Այդ պատճառով, անհրաժեշտ չէ հստակ հայտարարել դրանց մասին web.xml-ում կամ ներբեռնել լրացուցիչ JAR ֆայլեր (հատկապես հին կոնտեյներների կամ եթե ցանկանում եք օգտագործել որոշակի տարբերակ JSTL, որը տարբերվում է ինտեգրվածից)։ Ստանդարտ տեգերի TLD ֆայլերը (օրինակ, jsp.tld JSTL JAR-ների մեջ) կամ արդեն կան կոնտեյներում, կամ կոնտեյները գիտեն, ինչպես գտնել դրանք առանց հստակ նշման web.xml-ում։

Ստանդարտ տեգերի օգտագործումը JSP-ում կատարվում է taglib ուղղությամբ.

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

Այս ուղղությունը ասում է JSP շարժիչին, որ օգտագործի JSTL Core գրադարան c նախածանցով։ uri հատկությունը ցույց է տալիս միավորական նույնականացուցիչը տեգային գրադարանի համար, որը արդեն գիտի կոնտեյները։