URI JSLL taglib устарел?

Я проверил Spring учебник MVC и скопировал этот небольшой JSP-код:

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

<html>
    <head><title>Training, Inc.</title></head>
    <body>
        <h2><c:out value="${message}" /></h2>
    </body>
</html>

Существует строка для сообщения, а тег c: out просто печатает буквально

${сообщение}

Я некоторое время бил головой, пока не вспомнил проблему, с которой я столкнулся раньше, и изменил URI taglib:

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

Это решило мою маленькую проблему

Некоторое время назад у меня была аналогичная проблема с преобразованием XSLT, но в этом случае мне пришлось перейти от http://java.sun.com/jstl/xml до http://java.sun.com/jsp/jstl/xml

В соответствии с этой ссылкой http://java.sun.com/jsp/jstl, а в других я получил последнюю версию из http://java.sun.com/jstl

Ответы

Ответ 1

Да, хорошо известно, что URI для taglibs изменился между версиями JSTL 1.0 и 1.1. Если вам удастся получить примеры, использующие старый стандарт, и попытайтесь использовать их с новым JAR taglib, у вас возникнет такая проблема.

Ответ 2

Если вы все еще получаете эту ошибку, но вы вручную создаете свой pom, вы, вероятно, пропустили стандартную библиотеку. например Я пропустил

    <dependency>
        <groupId>taglibs</groupId>
        <artifactId>standard</artifactId>
        <version>${jstl.version}</version>
    </dependency>