web-dev-qa-db-fra.com

Impossible de trouver le descripteur de bibliothèque de balises pour "http://Java.Sun.com/jsp/jstl/core"

J'essaie d'utiliser JSTL, mais j'obtiens l'erreur suivante:

Can not find the tag library descriptor for "http://Java.Sun.com/jsp/jstl/core"

Comment cela est-il causé et comment puis-je le résoudre?

30
charilaos13

Utilisez la définition de taglib dans votre JSP ou, mieux, incluez-la dans chaque page à la première ligne.

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

Il y a aussi un correctif jstl-1.2 dépendance dans votre projet. Utilisez également la spécification de servlet au moins 2,4 dans votre web.xml.

Les dépendances maven sont (maven est un outil de développement open source)

<dependency>
  <groupId>jstl</groupId>
  <artifactId>jstl</artifactId>
  <version>1.2</version>
  <scope>compile</scope>
</dependency>
<dependency>
  <groupId>taglibs</groupId>
  <artifactId>standard</artifactId>
  <version>1.1.2</version>
  <scope>compile</scope>
</dependency>

Dans le web.xml commencer à écrire

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
    xmlns="http://Java.Sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://Java.Sun.com/xml/ns/javaee 
    http://Java.Sun.com/xml/ns/javaee/web-app_2_5.xsd">

EDIT:

J'aimerais ajouter une note mentionnée par @ informatik01 dans le commentaire sur les versions les plus récentes des bibliothèques JSTL disponibles dans le référentiel Maven: API JSTL version 1.2.1 et JSTL 1.2.1 .

47
Roman C

J'ai eu le même problème même après avoir ajouté des fichiers jar pour jstl et standard. Pour moi, cela s'est résolu après que j'ai ajouté un runtime ciblé pour mon projet.

Allez dans Propriétés du projet> Runtimes ciblés et sélectionnez le serveur que vous utilisez (Tomcat 7.0 pour moi).

14
Arif Hossain

Vous pouvez essayer de transformer le dossier contenant jsp-s en dossier source d’Eclipse, ce qui a résolu le même problème. Comme ci-dessous:

  1. ouvrir les propriétés du projet (clic droit sur le projet, puis choisir les propriétés)
  2. choisissez Java, sélectionnez l'onglet Source, cliquez sur Ajouter un dossier et choisissez le dossier contenant votre jsp-s, puis cliquez sur OK.
3
dongxu

créez un dossier libs dans le répertoire interne WEB-INF et ajoutez jstl, les fichiers JAR standard comme ci-dessous.enter image description here

3
praveen

Mec suffit d'inclure le fichier standard.jar dans le chemin de génération de votre projet.

1
AvatarGirase

dans votre pom.xml ajoutez simplement

    <!-- jstl -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency> 

et essayer de courir

mvn Eclipse:eclipse -Dwtpversion=2.0

va résoudre le problème