You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Eric J Kaplan <er...@armanta.com> on 2005/04/05 20:43:32 UTC

NoClassDefFoundError: org/apache/avalon/framework/logger/Logger

All

 

I recently downloaded tomcat version 5.0.28 and created a webapp in the
webapps directory which looks as follows:

 

<tomcat_home>

    webapps

        armanta-war

            WEB-INF

                lib

                    armanta.jar

 

armanta.jar has two classes in it, my servlet and a class used by the
servlet.

 

My web.xml is shown below.

 

When I go to run my servlet, I get the following exception report and can't
explain why, since my install of tomcat is pretty vanilla. I know
historically there have been issues related to conflicts between jars, but
in my case I've only added two class files into the mix. Can someone please
help?

 

type Exception report

message 

description The server encountered an internal error () that prevented it
from fulfilling this request.

exception 

javax.servlet.ServletException: Error instantiating servlet class
com.armanta.servlets.ReportServlet
 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118
)
 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:705)
 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:683)
        java.lang.Thread.run(Thread.java:536)

root cause 

java.lang.NoClassDefFoundError: org/apache/avalon/framework/logger/Logger
        java.lang.Class.getDeclaredConstructors0(Native Method)
        java.lang.Class.privateGetDeclaredConstructors(Class.java:1590)
        java.lang.Class.getConstructor0(Class.java:1762)
        java.lang.Class.newInstance0(Class.java:276)
        java.lang.Class.newInstance(Class.java:259)
 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118
)
 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:705)
 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:683)
        java.lang.Thread.run(Thread.java:536)

note The full stack trace of the root cause is available in the Apache
Tomcat/5.0.28 logs.

 

 

<?xml version="1.0" encoding="ISO-8859-1"?>

 

<!DOCTYPE web-app 

    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 

    "http://java.sun.com/dtd/web-app_2_3.dtd">

 

<web-app>

 

 

    <!-- General description of your web application -->

 

    <display-name>Armanta Report Web Application</display-name>

    <description>

         Consists of a servlet to send report commands to.

    </description>

 

 

    <servlet>

    <servlet-name>ArmantaServlet</servlet-name>

    <servlet-class>com.armanta.servlets.ReportServlet</servlet-class>

    </servlet>

 

    <servlet-mapping>

    <servlet-name>ArmantaServlet</servlet-name>

    <url-pattern>/ReportServlet</url-pattern>

    </servlet-mapping>

 

</web-app>

 

Eric J. Kaplan

Armanta, Inc.

350 Mt. Kemble Ave.

Morristown, NJ 07960