Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

Tags:

java

jsp

jstl

I'm trying to use JSTL, but I get the following error:

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

How is this caused and how can I solve it?

like image 527
charilaos13 Avatar asked Mar 15 '13 14:03

charilaos13


People also ask

How do I enable Jstl?

Install JSTL Library Step 1 − Download the binary distribution from Apache Standard Taglib and unpack the compressed file. Step 2 − To use the Standard Taglib from its Jakarta Taglibs distribution, simply copy the JAR files in the distribution's 'lib' directory to your application's webapps\ROOT\WEB-INF\lib directory.

How install TLD file in eclipse?

Just go for New->XML file and name the file as yourname. tld thats all !


2 Answers

Use taglib definition in your JSP or better include it in every page by the first line.

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

There's also fix jstl-1.2 dependency in your project. Also use servlet specification at least 2.4 in your web.xml.

The maven dependencies are (maven is a open source development tool)

<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 the web.xml start writing

<?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:

I'd like to add a note that @informatik01 has mentioned in the comment about newer version of JSTL libraries available from Maven repository: JSTL version 1.2.1 API and JSTL 1.2.1 .

like image 89
Roman C Avatar answered Oct 14 '22 01:10

Roman C


I had the same problem even after I added jar files for jstl and standard. For me, it resolved after I added a Targeted runtime for my project.

Go to Project Properties > Targeted Runtimes and select the server you are using (Tomcat 7.0 for me).

like image 20
Arif Hossain Avatar answered Oct 14 '22 00:10

Arif Hossain