Как использовать JSTL 1.2 на Tomcat 8? - PullRequest
0 голосов
/ 22 января 2019

Я хочу использовать JSTL 1.2 в своем веб-приложении Tomcat 8. Я продолжаю получать JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application. Ни один из других ответов в Интернете не решил эту проблему для меня.

Я проверил, что jstl-1.2.jar находится в папке WEB-INF/lib моего веб-приложения, и мой JSP имеет более новую, <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>, объявленную вверху.

Если я открою файл jstl-1.2.jar с помощью 7zip, я ясно вижу файл c.tld в папке META-INF, а внутри этого файла я даже вижу следующую строку: <uri>http://java.sun.com/jsp/jstl/core</uri>.

Я не использую maven, просто копирую jar-файлы в папку WEB-INF / lib по мере необходимости. Файл web.xml моего веб-приложения указывает, что это версия веб-приложения 3.1

Что еще я могу сделать, чтобы устранить эту проблему? Кроме того, есть ли современная документация по использованию JSTL? Документы Oracle заканчиваются здесь , в котором почти нет подробностей об использовании JSTL или даже о том, как его получить.

Структура веб-приложения:

enter image description here

1 Ответ

0 голосов
/ 22 января 2019

В моем случае файл catalina.properties Tomcat имел настройку jarsToSkip на \*.jar, поэтому файлы jar не будут сканироваться, что приведет к более быстрому запуску.Чтобы переопределить это, я добавил taglibs*.jar (мои банки назывались taglibs-standard-impl-1.2.5.jar и taglibs-standard-spec-1.2.5, поэтому он поднял оба) к параметру jarsToScan под ним, что устранило проблему.

I 'Я предполагаю, что если банки не сканируются, теги не могут быть найдены.

На странице Tomcat хорошо написано использование тегов здесь с полезной readme .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...