When I am trying to access a JSP which has the directive as below: <%@ taglib prefix="fn" uri="http://java.sun.com/jstl/fmt"%> I get the following exception: org.apache.jasper.JasperException: This absolute uri (http://java.sun.com/jstl/fmt) cannot be resolved in either web.xml or the jar files deployed with this application at org.apache.jasper.compiler.DefaultErrorHandler.jspError (DefaultErrorHandler.java:105) at org.apache.jasper.compiler.ErrorDispatcher.dispatch (ErrorDispatcher.java:430) at org.apache.jasper.compiler.ErrorDispatcher.jspError (ErrorDispatcher.java:154) at org.apache.jasper.compiler.TagLibraryInfoImpl. (TagLibraryInfoImpl.java:159) at org.apache.jasper.compiler.Parser.parseTaglibDirective (Parser.java:354) at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:381) at org.apache.jasper.compiler.Parser.parseElements(Parser.java:795) at org.apache.jasper.compiler.Parser.parse(Parser.java:122) at org.apache.jasper.compiler.ParserController.parse (ParserController.java:199) at org.apache.jasper.compiler.ParserController.parse (ParserController.java:153) at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:227) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:369) at org.apache.jasper.JspCompilationContext.compile (JspCompilationContext.java:473) at org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:190) at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:295) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:247) I am using JBoss 320 bundled with Tomcat 4.1.27 and I have both the jstl.jar and standard.jar in the WEB-INF\lib directory of the war file deployed. Could you tell me why this exception is being thrown. Here are the contents of my web.xml: <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd" version="2.4"> <description>Web application that demonstrates JSTL tags</description> <display-name>TTDec2003WebApp</display-name> </web-app>
This sounds like a version mismatch error (between JSTL and Tomcat). What version of JSTL are you using? It should be 1.0.x, and not 1.1.x. Anyway, I'm reassigning it to the proper component.
Prabhakar, According to your web.xml, you are using JSP 2.0. Then you should be using JSTL 1.1, whose URLs are: http://java.sun.com/jsp/jstl/core http://java.sun.com/jsp/jstl/fmt http://java.sun.com/jsp/jstl/xml http://java.sun.com/jsp/jstl/sql Felipe