tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Coetmeur, Alain" <alain.coetm...@icdc.caissedesdepots.fr>
Subject Tomcat 3.2.1, taglib demo /examples/jsp/simpletag/foo.jsp throws NoSuchMethodError in TagLibraryInfoImpl.createAttribute
Date Tue, 09 Jan 2001 13:51:23 GMT

I've intalled tomcat 3.2.1 with cocoon1.8,
xerces 1.2, servlet 2.2 jar, ... jdk1.3 SE on Windows NT SP6.

Cocoon and most of the JSP demos work perfectly,
but the taglib demo throws the NoSuchMethoError exception...

I have recompiled the examples classes 
but nothing changes...

the TLD seems OK,
and if I change the reference in the web.xml
in WEB-INF, then it throws an error message telling
it cannot read the TLD.
this seems to show that the TLD is correctly designated.

my problem looks like the one related in BugRat Report #246
http://www.metronet.com/~wjm/tomcat/FromFeb11/msg06508.html
and BugRat Report # 65 
http://w6.metronet.com/~wjm/tomcat/FromFeb11/msg05379.html

is this a known problem?
with a solution ?
any advices or things to look at...
I've checked everywhere I know, in the mailing list archives,
on the web with google, in dejanews, but
only BugRats reports talk about that with no anwer...

here are : the error message, foo.jsp, web.xml and example-taglib.tld

---------------------------
--- error message
Location: /examples/jsp/simpletag/foo.jsp
Internal Servlet Error:

javax.servlet.ServletException
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:399)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
	at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
	....

Root cause: 
java.lang.NoSuchMethodError
	at
org.apache.jasper.compiler.TagLibraryInfoImpl.createAttribute(TagLibraryInfo
Impl.java:524)
	at
org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoIm
pl.java:432)
	at
org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.ja
va:385)
	at
org.apache.jasper.compiler.TagLibraryInfoImpl.(TagLibraryInfoImpl.java:233)
	at
org.apache.jasper.compiler.JspParseEventListener.handleDirective(JspParseEve
ntListener.java:706)
	at
org.apache.jasper.compiler.DelegatingListener.handleDirective(DelegatingList
ener.java:116)
	at
org.apache.jasper.compiler.Parser$Directive.accept(Parser.java:215)
	at org.apache.jasper.compiler.Parser.parse(Parser.java:1077)
	at org.apache.jasper.compiler.Parser.parse(Parser.java:1042)
	at org.apache.jasper.compiler.Parser.parse(Parser.java:1038)
	at org.apache.jasper.compiler.Compiler.compile(Compiler.java:182)
	at
org.apache.jasper.servlet.JspServlet.doLoadJSP(JspServlet.java:462)
	at
org.apache.jasper.servlet.JasperLoader12.loadJSP(JasperLoader12.java:146)
	at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:433)
	at
org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary(JspSe
rvlet.java:152)
	at
org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
va:164)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
	at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
	at org.apache.tomcat.core.Handler.service(Handler.java:286)
	at
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
	at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
7)
	at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
	at
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
onnectionHandler.java:210)
	at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
	at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
	at java.lang.Thread.run(Thread.java:484)

------------------------------------------
---- webapps/examples/jsp/foo.jsp
<html>
<!--
  Copyright (c) 1999 The Apache Software Foundation.  All rights 
  reserved.
-->
<body>
<%@ taglib uri="http://java.apache.org/tomcat/examples-taglib" prefix="eg"
%>

Radio stations that rock:

<ul>
<eg:foo att1="98.5" att2="92.3" att3="107.7">
<li><%= member %></li>
</eg:foo>
</ul>

<eg:log>
Did you see me on the stderr window?
</eg:log>

<eg:log toBrowser="true">
Did you see me on the browser window as well?
</eg:log>

</body>
</html>
------------------------------------------
---- webapps/examples/WEB-INF/web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<web-app>
    <servlet>
        <servlet-name>
            snoop
        </servlet-name>
        <servlet-class>
            SnoopServlet
        </servlet-class>
<!--
        <init-param>
            <param-name>foo</param-name>
            <param-value>bar</param-value>
        </init-param>
-->
    </servlet>
    <servlet>
      <servlet-name>
          servletToJsp
      </servlet-name>
      <servlet-class>
          servletToJsp
      </servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>
            snoop
        </servlet-name>
        <url-pattern>
            /snoop
        </url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>
            snoop
        </servlet-name>
        <url-pattern>
            *.snp
        </url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>
            servletToJsp
        </servlet-name>
        <url-pattern>
            /servletToJsp
        </url-pattern>
    </servlet-mapping>

    <taglib>
        <taglib-uri>
	   http://java.apache.org/tomcat/examples-taglib
        </taglib-uri>
        <taglib-location>
           /WEB-INF/jsp/example-taglib.tld
        </taglib-location>
    </taglib>

    <security-constraint>
      <web-resource-collection>
         <web-resource-name>Protected Area</web-resource-name>
	 <!-- Define the context-relative URL(s) to be protected -->
         <url-pattern>/jsp/security/protected/*</url-pattern>
	 <!-- If you list http methods, only those methods are protected -->
	 <http-method>DELETE</http-method>
         <http-method>GET</http-method>
         <http-method>POST</http-method>
	 <http-method>PUT</http-method>
      </web-resource-collection>
      <auth-constraint>
         <!-- Anyone with one of the listed roles may access this area -->
         <role-name>tomcat</role-name>
	 <role-name>role1</role-name>
      </auth-constraint>
    </security-constraint>

    <!-- Default login configuration uses BASIC authentication -->
    <!--
    <login-config>
      <auth-method>BASIC</auth-method>
      <realm-name>Example Basic Authentication Area</realm-name>
    </login-config>
    -->

    <!-- Form-based login is enabled by default.  If you wish to
         try Basic authentication, comment out the <login-config>
         section below and uncomment the one above. -->
    <login-config>
      <auth-method>FORM</auth-method>
      <realm-name>Example Form-Based Authentication Area</realm-name>
      <form-login-config>
        <form-login-page>/jsp/security/login/login.jsp</form-login-page>
        <form-error-page>/jsp/security/login/error.jsp</form-error-page>
      </form-login-config>
    </login-config>
</web-app>

------------------------------------------
--- webapps/examples/WEB-INF/jsp/example-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>simple</shortname>
  <uri></uri>
  <info>
	A simple tab library for the examples
  </info>
  <tag>
    <name>ShowSource</name>
    <tagclass>examples.ShowSource</tagclass>
    <info> Display JSP sources </info>
    <attribute>
       <name>jspFile</name>
       <required>true</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>       
  <!-- A simple Tag -->
  <!-- foo tag -->
  <tag>
    <name>foo</name>
    <tagclass>examples.FooTag</tagclass>
    <teiclass>examples.FooTagExtraInfo</teiclass>
    <bodycontent>JSP</bodycontent>
    <info>
	Perform a server side action; uses 3 mandatory attributes
    </info><attribute>
      <name>att1</name>
      <required>true</required>
    </attribute>
    <attribute>
      <name>att2</name>
      <required>true</required>
    </attribute>
    <attribute>
      <name>att3</name>
      <required>true</required>
    </attribute>
  </tag>
  <!-- Another simple tag -->
  <!-- log tag -->
  <tag>
    <name>log</name>
    <tagclass>examples.LogTag</tagclass>
    <bodycontent>TAGDEPENDENT</bodycontent>
    <info>
	Perform a server side action; Log the message.
    </info>
    <attribute>
	<name>toBrowser</name>
	<required>false</required>
    </attribute>
  </tag>  
</taglib>

Mime
View raw message