webentwicklung-frage-antwort-db.com.de

Problemlösung: Der Tag-Bibliotheksdeskriptor für "http://Java.Sun.com/jsp/jstl/core" wurde nicht gefunden.

<%@ taglib prefix="c" uri="http://Java.Sun.com/jsp/jstl/core" %>
<%@ page import="com.library.controller.*"%>
<%@ page import="com.library.dao.*" %>
<%@ page import="Java.util.*" %>
<%@ page import="Java.lang.*" %>
<%@ page import="Java.util.Date" %>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Return Page</title>
</head>
<body bgcolor="#aabcde">
<div align="right"><a href="Login.jsp">Logout</a></div>
<table align="center" border="2" cellspacing="3" cellpadding="3">
<tr><th>BookID</th><th>BookName</th><th>Issuedate</th><th>returndate</th></tr>
<c:forEach var="element" items="${list}">
    <tr>
        <td>${element.getBookid}</td><td>${element.getBookname()}</td>  
        <td>${element.getIssuedate()}</td><td>${element.getReturndate()}</td>
    </tr>
</c:forEach>

Die Eclipse IDE ist rot unterstrichen, und wenn ich sie fokussiere, lautet das Tag: Der Bibliotheksdeskriptor für http://Java.Sun.com wurde nicht gefunden/jsp/jstl/core

90
Samarth2011

Ich benutze das auch

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

aber ich bekomme keinen fehler.

Haben Sie das jstl.jar in deiner Bibliothek? Wenn nicht, könnte dies das Problem verursachen. Und auch den 'tld'-Ordner hast du dabei? Und wie wäre es mit Ihrem web.xml hast du es kartiert?

Weitere Informationen finden Sie in den Informationen zu jstl .

60
ace

Ich weiß, dass dieser Thread bereits ein Jahr alt ist, aber da ich das gleiche Problem hatte, konnte ich es lösen, indem ich einen Zielserver für mein Projekt festlegte.

klicken Sie mit der rechten Maustaste auf Ihr Projekt und wählen Sie "Eigenschaften" -> "Gezielte Laufzeiten" und wählen Sie den Server aus, auf dem Sie Ihre Web-App ausführen möchten (Tomcat 6 oder 7).

98
willix

Wie @ace bereits erwähnt, benötigen Sie die jstl.jar in Ihrem Projekt. Wenn Sie also maven verwenden, können Sie diese Abhängigkeit hinzufügen:

<dependency>
    <groupId>jstl</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
</dependency>

Quelle: http://mvnrepository.com/artifact/jstl/jstl/

Ich hoffe es hilft.

BEARBEITEN: Die meisten Server haben diese Abhängigkeit bereits. Wenn Sie sie mit maven hinzufügen, kann dies zu Versionskonflikten führen (wie Method/ClassNotFoundException), wenn Sie dies nicht tun Konfigurieren Sie den Server gut, so dass es besser ist, einen Zielserver für Ihr Projekt festzulegen, wie von @willix erwähnt.

34
rvazquezglez

Versuchen Sie, wie folgt hinzuzufügen:

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

anstatt zu haben

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

Fügen Sie sowohl javax.servlet.jsp.jstl-api-1.2.1.jar als auch standard-1.1.2.jar hinzu

6
Karthikeyan K

Nach ein paar Treffern und Versuchen benutze ich dies. Das funktioniert bei mir.

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

WARNUNG: Wie BalusC richtig erwähnt, funktioniert dies für JSTL 1.0.

5
Nishant

Ich habe versucht, de * .jsp- und * .xml-Dateien in Eclipse mit dem Validierungstool zu "validieren".

"Rechtsklick auf Verzeichnis/Datei -> - validieren" und es hat funktioniert!

Eclipse juno verwenden.

Ich hoffe es hilft!

3
WalterVi

Sie zielen wahrscheinlich auf einen Server ohne integrierte JSTL-Unterstützung (z. B. eine bestimmte Version von Tomcat). Sie müssen Ihre eigene JSTL-Tag-Bibliothek bereitstellen.

3
McDowell

Mit der:

standard.jar

Behebt das Problem.

2

fügen Sie zwei Gläser in Ihren Ordner/WEB-INF/lib ein und gehen Sie dann zu den Projekteigenschaften, fügen Sie ein Glas hinzu und wählen Sie diese beiden Gläser aus. Klicken Sie dann auf OK, OK

standard.jar, jstl-1.0.2.jar

2
Antesh Sharma

Du musst schreiben als

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

Stellen Sie sicher, dass Sie jstl-1.0 & standard.jar BEIDE Dateien in einem Klassenpfad platziert haben

1
Saurabh Naik

Es hat nichts zu tun mit <%@ taglib uri="http://Java.Sun.com/jsp/jstl/core" prefix="c" %>.

Gehen Sie einfach zum Projekt und klicken Sie mit der rechten Maustaste auf das Projektmenü -> Bereinigen Sie den Projektfehler, um den Maven definitiv zu entfernen und zu aktualisieren.

1

Ich habe dieses Problem gelöst. benutze unten taglib

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

und füge jstl-1.2.jar hinzu

1
Bhagwan Singh

Es funktioniert perfekt, wenn Sie die beiden erforderlichen JAR-Dateien im Ordner/WEB-INF/lib ablegen, d. H. Jstl-1.2.jar und javax.servlet.jsp im Ordner/WEB-INF/lib.

Ich hoffe es hilft. :)

1
Jitesh Beniwal

Ich habe jstl jar zu einer Bibliothek hinzugefügt und es hinzugefügt, um den Pfad und die Bereitstellung der Assembly zu erstellen, aber es hat nicht funktioniert. dann habe ich einfach mein jstl jar in den lib ordner im webcontent kopiert, es hat funktioniert. im Eclipse-Lib-Ordner, der standardmäßig in die Bereitstellungsassembly aufgenommen wird

0
ravi

Das sollte funktionieren

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

und lassen Sie uns darüber hinaus bitte wissen, warum Sie all diese Klassen importieren

<%@ page import="com.library.controller.*"%> 
<%@ page import="com.library.dao.*" %> 
<%@ page import="Java.util.*" %> 
<%@ page import="Java.lang.*" %> 
<%@ page import="Java.util.Date" %>

Java.lang muss nicht enthalten sein, da es das Standardpaket ist.

0
Krishna

Ich werde noch eine Lösung in die Mischung werfen. Ich habe eine Beispiel-App heruntergeladen und sie wurde nur auf diese Taglib geklemmt. Es stellte sich heraus, dass die einfachen Anführungszeichen um die Attribute nicht wichtig waren.

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

Nachdem ich diese geändert und sichergestellt hatte, dass sich jstl.jar in der Web-App befindet, konnte ich loslegen.

0
Dan Doyon