Ich versuche, JSTL zu verwenden, erhalte jedoch die folgende Fehlermeldung:
Can not find the tag library descriptor for "http://Java.Sun.com/jsp/jstl/core"
Wie entsteht das und wie kann ich es lösen?
Verwenden Sie die Taglib-Definition in Ihrer JSP oder fügen Sie sie besser in jede Seite in der ersten Zeile ein.
<%@ taglib prefix="c" uri="http://Java.Sun.com/jsp/jstl/core" %>
Es gibt auch fix jstl-1.2
Abhängigkeit in Ihrem Projekt. Verwenden Sie auch die Servlet-Spezifikation mindestens 2.4 in Ihrem web.xml
.
Die Maven-Abhängigkeiten sind (Maven ist ein Open Source-Entwicklungstool).
<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>
In dem web.xml
beginne zu schreiben
<?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:
Ich möchte einen Hinweis hinzufügen, den @ informatik01 im Kommentar zu neueren Versionen von JSTL-Bibliotheken erwähnt hat, die im Maven-Repository verfügbar sind: JSTL-Version 1.2.1 API und JSTL 1.2.1 .
Ich hatte das gleiche Problem, auch nachdem ich JAR-Dateien für JSTL und Standard hinzugefügt hatte. Für mich löste es sich auf, nachdem ich eine Targeted-Laufzeit für mein Projekt hinzugefügt hatte.
Gehen Sie zu Projekteigenschaften> Ziellaufzeiten und wählen Sie den von Ihnen verwendeten Server aus (Tomcat 7.0 für mich).
Sie können versuchen, den Ordner mit jsp-s zum Quellordner von Eclipse zu machen, der das gleiche Problem wie ich gelöst hat. Wie nachstehend:
- öffnen Sie die Eigenschaften des Projekts. (Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie die Eigenschaften aus.)
- wählen Sie Java Build Path, wählen Sie die Registerkarte Source, klicken Sie auf Add Folder und wählen Sie den Ordner mit Ihren JSPs, OK
erstellen Sie einen libs-Ordner im internen WEB-INF-Verzeichnis und fügen Sie jstl-Standardgläser hinzu (siehe unten).
Nehmen Sie einfach die Datei standard.jar in Ihren Projekterstellungspfad auf.
in deiner pom.xml füge einfach hinzu
<!-- jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
und versuche zu rennen
mvn Eclipse:eclipse -Dwtpversion=2.0
wird das Problem lösen