Как добавить <taglib>элементов в web.xml с Netbeans7.0? - PullRequest
1 голос
/ 08 августа 2011

Я хочу добавить JSTL taglib на мою страницу jsp. Я использовал TLD (дескриптор lib тега), но он не работает.

<?xml version="1.0" encoding="UTF-8" ?>

<taglib xml......./java.sun.com/xml/ns/javaeeversion="2.1">

<tlib-version>1.0</tlib-version>
<uri>/WEB-INF/lib/jstl-impl-1.2.jar</uri>

</taglib>

и импортировал его так:

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

1 Ответ

1 голос
/ 09 августа 2011

Это неправильный способ установки и использования JSTL.Удалите свободные файлы TLD.Удалите все изменения, которые вы сделали в web.xml.Игнорируйте и заносите в черный список все учебные пособия и другие онлайн-ресурсы, в которых вам об этом сказано.

Правильный путь:

  • Проверьте, поставляется ли целевой контейнер с JSTL в комплекте.Простые контейнеры, такие как Tomcat, Jetty и т. Д. Этого не делают.Вам нужно поместить jstl-1.2.jar в папку /WEB-INF/lib вашего веб-приложения (которая указана в стандартном пути к классам среды выполнения веб-приложения) или в (общем) пути к классам контейнера.Больше ничего не нужно делать.Не извлекайте файл JAR и не создавайте файлы TLD или что-то в этом роде.Более полноценные контейнеры, такие как Glassfish, JBoss AS и т. Д., Уже поставляются в комплекте с JSTL.В этом случае вам не нужно ничего загружать или изменять путь к классам.

  • Прочитайте документацию JSTL taglib .Вы хотели бы использовать библиотеку ядра JSTL.Нажмите на ссылку JSTL core в документации по taglib.Прочитайте часть «стандартный синтаксис», как правильно объявить в файле JSP.Он читается как

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

    (обратите внимание на /jsp часть в URI taglib!)

Вот и все.

См. Также:

...