You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Dave Kennedy <da...@dksy.net> on 2006/06/08 02:07:05 UTC
java.lang.NoSuchMethodError: javax.servlet.jsp.tagext.TagInfo
The Servlet Exception is displayed running SimpleExample.jsp
Any help would be greatly appreciated
SET CATALINA_HOME=C:\Program Files\Apache Software
Foundation\jakarta-tomcat-5.5.9
SET JAVA_HOME=C:\Program Files\Java\jdk1.5.0_06
http://localhost:8080/stuff09/SimpleExample.jsp
javax.servlet.ServletException:
javax.servlet.jsp.tagext.TagInfo.<init>(Ljava/lang/String;Ljava/lang/Str
ing;Ljava/lang/String;Ljava/lang/String;Ljavax/servlet/jsp/tagext/TagLib
raryInfo;Ljavax/servlet/jsp/tagext/TagExtraInfo;[Ljavax/servlet/jsp/tage
xt/TagAttributeInfo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Strin
g;[Ljavax/servlet/jsp/tagext/TagVariableInfo;Z)V
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
root cause
java.lang.NoSuchMethodError:
javax.servlet.jsp.tagext.TagInfo.<init>(Ljava/lang/String;Ljava/lang/Str
ing;Ljava/lang/String;Ljava/lang/String;Ljavax/servlet/jsp/tagext/TagLib
raryInfo;Ljavax/servlet/jsp/tagext/TagExtraInfo;[Ljavax/servlet/jsp/tage
xt/TagAttributeInfo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Strin
g;[Ljavax/servlet/jsp/tagext/TagVariableInfo;Z)V
org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryIn
foImpl.java:435)
org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImp
l.java:248)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.
java:162)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:483)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1543)
org.apache.jasper.compiler.Parser.parse(Parser.java:126)
org.apache.jasper.compiler.ParserController.doParse(ParserController.jav
a:211)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:
100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:146)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.ja
va:556)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:293)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
SimpleExample.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!--
Illustration of very simple JSP custom tag.
Taken from Core Servlets and JavaServer Pages
from Prentice Hall and Sun Microsystems Press,
http://www.coreservlets.com/.
© 2000 Marty Hall; may be freely used or adapted.
-->
<HTML>
<HEAD>
<%@ taglib uri="csajsp-taglib.tld" prefix="csajsp" %>
<TITLE><csajsp:example /></TITLE>
<LINK REL=STYLESHEET
HREF="JSP-Styles.css"
TYPE="text/css">
</HEAD>
<BODY>
<H1><csajsp:example /></H1>
<csajsp:example />
</BODY>
</HTML>
csajsp-taglib.tld
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<!-- a tag library descriptor -->
<taglib>
<!-- after this the default space is
"http://java.sun.com/j2ee/dtds/jsptaglibrary_1_2.dtd"
-->
<tlibversion>1.0</tlibversion>
<jspversion>1.1</jspversion>
<shortname>csajsp</shortname>
<!-- ** CHANGED FROM "urn" TO "uri" IN TOMCAT 3.1 ** -->
<uri></uri>
<info>
A tag library from Core Servlets and JavaServer Pages,
http://www.coreservlets.com/.
</info>
<!--
<tag>
The name (after prefix) tag will have in JSP code
<name>example</name>
The actual class implementing tag. In
Tomcat 3.1 beta, it MUST be in a package.
<tagclass>coreservlets.tags.ExampleTag</tagclass>
Descriptive information about tag.
<info>Simplest example: inserts one line of output</info>
One of three values describing what goes between
start and end tag.
empty: no body
JSP: body that is evaluated by container normally,
then possibly processed by tag
tagdependent: body is only processed by tag;
JSP in body is not evaluated.
** NOTE: TOMCAT 3.1 FINAL DOES NOT SUPPORT BODYCONTENT **
** THE BETA SUPPORTED IT, AND IT IS PART OF SPEC, BUT... **
<bodycontent>empty</bodycontent>
</tag>
-->
<tag>
<name>example</name>
<tagclass>coreservlets.tags.ExampleTag</tagclass>
<info>Simplest example: inserts one line of output</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>empty</bodycontent> -->
</tag>
<tag>
<name>simplePrime</name>
<tagclass>coreservlets.tags.SimplePrimeTag</tagclass>
<info>Outputs a random 50-digit prime.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>empty</bodycontent> -->
</tag>
<tag>
<name>prime</name>
<tagclass>coreservlets.tags.PrimeTag</tagclass>
<info>Outputs a random N-digit prime.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>empty</bodycontent> -->
<attribute>
<name>length</name>
<required>false</required>
</attribute>
</tag>
<tag>
<name>heading</name>
<tagclass>coreservlets.tags.HeadingTag</tagclass>
<info>Outputs a 1-cell table used as a heading.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
<attribute>
<name>bgColor</name>
<required>true</required> <!-- bgColor is required -->
</attribute>
<attribute>
<name>color</name>
<required>false</required>
</attribute>
<attribute>
<name>align</name>
<required>false</required>
</attribute>
<attribute>
<name>fontSize</name>
<required>false</required>
</attribute>
<attribute>
<name>fontList</name>
<required>false</required>
</attribute>
<attribute>
<name>border</name>
<required>false</required>
</attribute>
<attribute>
<name>width</name>
<required>false</required>
</attribute>
</tag>
<tag>
<name>debug</name>
<tagclass>coreservlets.tags.DebugTag</tagclass>
<info>Includes body only if debug param is set.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
</tag>
<tag>
<name>filter</name>
<tagclass>coreservlets.tags.FilterTag</tagclass>
<info>Replaces HTML-specific characters in body.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
</tag>
<tag>
<name>repeat</name>
<tagclass>coreservlets.tags.RepeatTag</tagclass>
<info>Repeats body the specified number of times.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
<attribute>
<name>reps</name>
<required>true</required>
<!-- rtexprvalue indicates whether attribute
can be a JSP expression. -->
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<name>if</name>
<tagclass>coreservlets.tags.IfTag</tagclass>
<info>if/condition/then/else tag.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
</tag>
<tag>
<name>condition</name>
<tagclass>coreservlets.tags.IfConditionTag</tagclass>
<info>condition part of if/condition/then/else tag.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
</tag>
<tag>
<name>then</name>
<tagclass>coreservlets.tags.IfThenTag</tagclass>
<info>then part of if/condition/then/else tag.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
</tag>
<tag>
<name>else</name>
<tagclass>coreservlets.tags.IfElseTag</tagclass>
<info>else part of if/condition/then/else tag.</info>
<!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
<bodycontent>JSP</bodycontent> -->
</tag>
</taglib>
Re: java.lang.NoSuchMethodError: javax.servlet.jsp.tagext.TagInfo
Posted by Marc Farrow <ma...@gmail.com>.
looks like you have your tag library set up for a certain version of the tag
library jars, but the jars are a different version. Check there to start
with.
On 6/7/06, Dave Kennedy <da...@dksy.net> wrote:
>
> The Servlet Exception is displayed running SimpleExample.jsp
> Any help would be greatly appreciated
>
> SET CATALINA_HOME=C:\Program Files\Apache Software
> Foundation\jakarta-tomcat-5.5.9
> SET JAVA_HOME=C:\Program Files\Java\jdk1.5.0_06
>
> http://localhost:8080/stuff09/SimpleExample.jsp
>
> javax.servlet.ServletException:
> javax.servlet.jsp.tagext.TagInfo.<init>(Ljava/lang/String;Ljava/lang/Str
> ing;Ljava/lang/String;Ljava/lang/String;Ljavax/servlet/jsp/tagext/TagLib
> raryInfo;Ljavax/servlet/jsp/tagext/TagExtraInfo;[Ljavax/servlet/jsp/tage
> xt/TagAttributeInfo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Strin
> g;[Ljavax/servlet/jsp/tagext/TagVariableInfo;Z)V
>
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>
> root cause
> java.lang.NoSuchMethodError:
> javax.servlet.jsp.tagext.TagInfo.<init>(Ljava/lang/String;Ljava/lang/Str
> ing;Ljava/lang/String;Ljava/lang/String;Ljavax/servlet/jsp/tagext/TagLib
> raryInfo;Ljavax/servlet/jsp/tagext/TagExtraInfo;[Ljavax/servlet/jsp/tage
> xt/TagAttributeInfo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Strin
> g;[Ljavax/servlet/jsp/tagext/TagVariableInfo;Z)V
>
> org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryIn
> foImpl.java:435)
>
> org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImp
> l.java:248)
>
> org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.
> java:162)
>
> org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
>
> org.apache.jasper.compiler.Parser.parseDirective(Parser.java:483)
>
> org.apache.jasper.compiler.Parser.parseElements(Parser.java:1543)
> org.apache.jasper.compiler.Parser.parse(Parser.java:126)
>
> org.apache.jasper.compiler.ParserController.doParse(ParserController.jav
> a:211)
>
> org.apache.jasper.compiler.ParserController.parse(ParserController.java:
> 100)
>
> org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:146)
> org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
> org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
> org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
>
> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.ja
> va:556)
>
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
> va:293)
>
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
>
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>
> SimpleExample.jsp
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
> <!--
> Illustration of very simple JSP custom tag.
>
> Taken from Core Servlets and JavaServer Pages
> from Prentice Hall and Sun Microsystems Press,
> http://www.coreservlets.com/.
> © 2000 Marty Hall; may be freely used or adapted.
> -->
> <HTML>
> <HEAD>
>
> <%@ taglib uri="csajsp-taglib.tld" prefix="csajsp" %>
>
> <TITLE><csajsp:example /></TITLE>
> <LINK REL=STYLESHEET
> HREF="JSP-Styles.css"
> TYPE="text/css">
> </HEAD>
>
> <BODY>
> <H1><csajsp:example /></H1>
> <csajsp:example />
>
> </BODY>
> </HTML>
>
> csajsp-taglib.tld
> <?xml version="1.0" encoding="ISO-8859-1" ?>
> <!DOCTYPE taglib
> PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
> "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
>
> <!-- a tag library descriptor -->
>
> <taglib>
> <!-- after this the default space is
> "http://java.sun.com/j2ee/dtds/jsptaglibrary_1_2.dtd"
> -->
>
> <tlibversion>1.0</tlibversion>
> <jspversion>1.1</jspversion>
> <shortname>csajsp</shortname>
> <!-- ** CHANGED FROM "urn" TO "uri" IN TOMCAT 3.1 ** -->
> <uri></uri>
> <info>
> A tag library from Core Servlets and JavaServer Pages,
> http://www.coreservlets.com/.
> </info>
>
> <!--
> <tag>
> The name (after prefix) tag will have in JSP code
> <name>example</name>
>
> The actual class implementing tag. In
> Tomcat 3.1 beta, it MUST be in a package.
> <tagclass>coreservlets.tags.ExampleTag</tagclass>
>
> Descriptive information about tag.
> <info>Simplest example: inserts one line of output</info>
>
> One of three values describing what goes between
> start and end tag.
> empty: no body
> JSP: body that is evaluated by container normally,
> then possibly processed by tag
> tagdependent: body is only processed by tag;
> JSP in body is not evaluated.
> ** NOTE: TOMCAT 3.1 FINAL DOES NOT SUPPORT BODYCONTENT **
> ** THE BETA SUPPORTED IT, AND IT IS PART OF SPEC, BUT... **
> <bodycontent>empty</bodycontent>
> </tag>
> -->
>
> <tag>
> <name>example</name>
> <tagclass>coreservlets.tags.ExampleTag</tagclass>
> <info>Simplest example: inserts one line of output</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>empty</bodycontent> -->
> </tag>
>
> <tag>
> <name>simplePrime</name>
> <tagclass>coreservlets.tags.SimplePrimeTag</tagclass>
> <info>Outputs a random 50-digit prime.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>empty</bodycontent> -->
> </tag>
>
> <tag>
> <name>prime</name>
> <tagclass>coreservlets.tags.PrimeTag</tagclass>
> <info>Outputs a random N-digit prime.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>empty</bodycontent> -->
> <attribute>
> <name>length</name>
> <required>false</required>
> </attribute>
> </tag>
>
> <tag>
> <name>heading</name>
> <tagclass>coreservlets.tags.HeadingTag</tagclass>
> <info>Outputs a 1-cell table used as a heading.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> <attribute>
> <name>bgColor</name>
> <required>true</required> <!-- bgColor is required -->
> </attribute>
> <attribute>
> <name>color</name>
> <required>false</required>
> </attribute>
> <attribute>
> <name>align</name>
> <required>false</required>
> </attribute>
> <attribute>
> <name>fontSize</name>
> <required>false</required>
> </attribute>
> <attribute>
> <name>fontList</name>
> <required>false</required>
> </attribute>
> <attribute>
> <name>border</name>
> <required>false</required>
> </attribute>
> <attribute>
> <name>width</name>
> <required>false</required>
> </attribute>
> </tag>
>
> <tag>
> <name>debug</name>
> <tagclass>coreservlets.tags.DebugTag</tagclass>
> <info>Includes body only if debug param is set.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> </tag>
>
> <tag>
> <name>filter</name>
> <tagclass>coreservlets.tags.FilterTag</tagclass>
> <info>Replaces HTML-specific characters in body.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> </tag>
>
> <tag>
> <name>repeat</name>
> <tagclass>coreservlets.tags.RepeatTag</tagclass>
> <info>Repeats body the specified number of times.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> <attribute>
> <name>reps</name>
> <required>true</required>
> <!-- rtexprvalue indicates whether attribute
> can be a JSP expression. -->
> <rtexprvalue>true</rtexprvalue>
> </attribute>
> </tag>
>
> <tag>
> <name>if</name>
> <tagclass>coreservlets.tags.IfTag</tagclass>
> <info>if/condition/then/else tag.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> </tag>
>
> <tag>
> <name>condition</name>
> <tagclass>coreservlets.tags.IfConditionTag</tagclass>
> <info>condition part of if/condition/then/else tag.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> </tag>
>
> <tag>
> <name>then</name>
> <tagclass>coreservlets.tags.IfThenTag</tagclass>
> <info>then part of if/condition/then/else tag.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> </tag>
>
> <tag>
> <name>else</name>
> <tagclass>coreservlets.tags.IfElseTag</tagclass>
> <info>else part of if/condition/then/else tag.</info>
> <!-- TOMCAT 3.1 DOES NOT SUPPORT BODYCONTENT
> <bodycontent>JSP</bodycontent> -->
> </tag>
>
> </taglib>
>
>
>
>
>
--
Marc Farrow