Не удается найти дескриптор библиотеки тегов Springframework - PullRequest
28 голосов
/ 18 ноября 2010

Я пытаюсь последовать примеру Spring JPetStore, но я получаю сообщение об ошибке на страницах JSP в строке, которая ссылается на тег lib lib:

Не удается найти дескриптор библиотеки тегов"http://www.springframework.org/tags"

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>

Каков URL этой библиотеки?

Есть ли способ избежать прямой зависимости от этого URL?

Заранее спасибо

Ответы [ 13 ]

17 голосов
/ 08 декабря 2011

Я знаю, что это старый вопрос, но библиотека тегов http://www.springframework.org/tags предоставляется пакетом spring-webmvc.С Maven его можно добавить в проект со следующими строками, которые будут добавлены в pom.xml

<properties>
    <spring.version>3.0.6.RELEASE</spring.version>
</properties>

<dependencies>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>

Без Maven, просто добавьте эту банку в путь к классам.В любом случае нет необходимости напрямую ссылаться на файл tld, он будет найден автоматически.

13 голосов
/ 19 ноября 2010
  1. Загрузите банку зависимости Spring
  2. Поместите его в путь к папке lib: /WEB-INF/lib/spring.jar
  3. Затем откройте web.xml и пример кода:

    <taglib>
      <taglib-uri>/WEB-INF/spring.tld</taglib-uri>
      <taglib-location>/WEB-INF/spring.tld</taglib-location>
    </taglib>
    
  4. Затем указывается taglib, где находится файл jar в вашей системе.

    <%@ taglib prefix="spring" uri="/WEB-INF/spring.tld" %>
    
12 голосов
/ 18 ноября 2011

Удаление пробела между @ и taglib помогло мне: <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>

10 голосов
/ 19 декабря 2013

Если вы используете Maven, используйте эту зависимость:

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-taglibs</artifactId>
    <version>3.1.4.RELEASE</version>
</dependency>
3 голосов
/ 08 августа 2012

Вы должны добавить зависимость для пружин mvc

tray, добавив это в ваш pom

<!-- mvc -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>3.1.2.RELEASE</version>
</dependency>
3 голосов
/ 19 ноября 2010

TLD должен быть расположен в spring.jar.Ваше приложение не будет зависеть от этого URL.Он просто используется как уникальное имя для идентификации библиотеки тегов.С таким же успехом они могли бы создать URI "/ spring-tags", но использование URL-адресов довольно распространено.

2 голосов
/ 11 марта 2014

У меня была такая же проблема с weblogic 12c и maven, которые я изначально использовал при развертывании из eclipse (kepler) (развертывание из консоли не дало ошибок).

Другие решения, приведенные на этой странице, не помогли.

Я извлек spring.tld spring-form.tld файлы jar spring-webmvc (которые я нашел в моем хранилище) в папке web \ WEB-INF моего военного модуля;

Я сделал новую сборку; развернул (из eclipse) в weblogic 12c, протестировал приложение и ошибка исчезла;

Я удалил файлы spring.tld spring-form.tld снова и после удаления; при перестройке и повторном развертывании приложения ошибка больше не появлялась.

Я дважды проверил, пропали ли файлы на войне, и их действительно не было.

надеюсь, что это поможет другим с подобной проблемой ...

1 голос
/ 23 апреля 2015

Если вам нужна прямая ссылка:

https://github.com/spring-projects/spring-framework/blob/master/spring-webmvc/src/main/resources/META-INF/spring-form.tld

Или из репозитория:

JCenter : ссылка

Maven Central : ссылка

А если вам нужна зависимость от Gradle:

compile 'org.springframework: spring-webmvc: 4.1.6.RELEASE

Дополнительная информация о форме Spring: http://docs.spring.io/spring/docs/current/spring-framework-reference/html/spring-form.tld.html

1 голос
/ 07 июля 2012

Я наконец настроил RAD для создания своего проекта на основе Maven, но получал следующее исключение при переходе на страницу, которая использует тег tag Spring:

JSPG0047E: Невозможно найти библиотеку тегов дляuri http://www.springframework.org/tags на com.ibm.ws.jsp.translator.visitor.tagfiledep.TagFileDependencyVisitor.visitCustomTagStart (TagFileDependencyVisitor.java:76) ...

Способ, которым я настроил свойEAR, все банки были в EAR, а не в WEB-INF / lib WAR.В соответствии со спецификацией JSP 2.0, я считаю, что теги libs ищутся во всех подкаталогах WEB-INF, отсюда и проблема.Мое решение состояло в том, чтобы скопировать файлы TLD и поместить в WEB-INF / lib или WEB-INF .. Тогда это сработало.

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

Основные зависимости для библиотеки тегов:

> <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-taglibs</artifactId>
</dependency>
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-security</artifactId>
</dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
...