I'm having a similar problem.  I installed Tomcat4 and
have the examples and struts-example webapps working.
However I can't seem to get my webapp which was
working fine under Tomcat3.2.1 to work.  I get the error
listed below when I try go to any *.do.  I

My $JAVA_HOME/jre/lib/ext directory is empty.
Anyone have any idea what the problem is?

Here's an abridged version of the error:
======================================================
Root Cause:
java.lang.NoClassDefFoundError: javax/sql/DataSource
 at java.lang.ClassLoader.defineClass0(Native Method)
 at java.lang.ClassLoader.defineClass(Unknown Source)
 at
java.security.SecureClassLoader.defineClass(Unknown
Source)
 at
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1488)...

======================================================


And here's the whole thing:
====================================================
A Servlet Exception Has Occurred
Exception Report:
javax.servlet.ServletException: Servlet.init() for
servlet action threw exception
 at
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:875)
 at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
 at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)

 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:215)

 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2366)
 at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:462)
 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:163)

 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1005)

 at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1098)
 at java.lang.Thread.run(Unknown Source)


Root Cause:
java.lang.NoClassDefFoundError: javax/sql/DataSource
 at java.lang.ClassLoader.defineClass0(Native Method)
 at java.lang.ClassLoader.defineClass(Unknown Source)
 at
java.security.SecureClassLoader.defineClass(Unknown
Source)
 at
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1488)

 at
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:851)

 at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1230)

 at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1113)

 at java.lang.ClassLoader.loadClassInternal(Unknown
Source)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Unknown Source)
 at
org.apache.struts.digester.ObjectCreateRule.begin(ObjectCreateRule.java:152)
 at
org.apache.struts.digester.Digester.startElement(Digester.java:528)
 at
org.xml.sax.helpers.XMLReaderAdapter.startElement(XMLReaderAdapter.java:329)
 at
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1451)
 at
org.apache.crimson.parser.Parser2.content(Parser2.java:1700)
 at
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1468)
 at
org.apache.crimson.parser.Parser2.content(Parser2.java:1700)
 at
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1468)
 at
org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:499)
 at
org.apache.crimson.parser.Parser2.parse(Parser2.java:304)
 at
org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:433)
 at
org.xml.sax.helpers.XMLReaderAdapter.parse(XMLReaderAdapter.java:223)
 at
javax.xml.parsers.SAXParser.parse(SAXParser.java:317)
 at
javax.xml.parsers.SAXParser.parse(SAXParser.java:108)
 at
org.apache.struts.digester.Digester.parse(Digester.java:755)
 at
org.apache.struts.action.ActionServlet.initMapping(ActionServlet.java:1331)
 at
org.apache.struts.action.ActionServlet.init(ActionServlet.java:465)
 at
javax.servlet.GenericServlet.init(GenericServlet.java:366)
 at
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:856)
 at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
 at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)

 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:215)

 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2366)
 at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:462)
 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:163)

 at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
 at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
 at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1005)

 at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1098)
 at java.lang.Thread.run(Unknown Source)


geojeff wrote:

> Greetings,
>
> My problem is that under 4.0-b7 _some_ of my application classes are not
> getting found.
>
> The webapp works fine under 3.2.1.  Classes are held in a single jar, which
> is placed in /usr/local/jakarta-tomcat/webapps/app/WEB-INF/lib.
>
> I installed 4.0-b7 (I know that rc2 is newest, but assume that isn't
> problem), and then copied webapp directories from the 3.2.1 webapps
> directory into the 4.0-b7 webapps directory
> (/usr/local/jakarta-tomcat-4.0-b7/webapps).  I recompiled are rejarred
> first, using the servlet.jar for 4.0-b7 in my compile classpath.
> CATALINA_HOME set fine, etc., as 4.0-b7 does work initially for my webapp --
> Stopping 3.2.1 and restarting 4.0-b7 works fine on the first call to a
> servlet, but there is a class-not-found error for a servlet class called on
> the next click.  The class that isn't getting found is a repository class
> for jdbc.
>
> Another odd thing, is that once I start attempting the upgrade to 4.0-b7,
> and then punt and go back to running 3.2.1, I also get the same
> class-not-found error under 3.2.1, but it goes away if I recompile, rejar,
> and redeploy the jar, and then restart 3.2.1.
>
> Anyway, eager to make the upgrade, but I'm having to step back to 3.2.1 each
> time I try.
>
> The traceback is included below.
>
> Thanks for any help,
>
> Jeff Pittman
>
> --------------------
>  StandardWrapperValve[resultslist]: Servlet.service() for servlet
> resultslist threw exception
> javax.servlet.ServletException: Servlet execution threw an exception
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:269)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:243)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:215)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2314)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164
> )
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:462)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :163)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
> 1000)
>         at
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1093
> )
>         at java.lang.Thread.run(Thread.java:484)
> ----- Root Cause -----
> java.lang.NoClassDefFoundError: com/company/project/Repository$1
>         at com.company.project.Repository.<clinit>(Repository.java:304)
>         at
> com.company.project.GetResultsCommand.execute(GetResultsCommand.java:19)
>         at com.company.project.ServerServlet.service(ServerServlet.java:102)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:247)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:243)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:215)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2314)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164
> )
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:462)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :163)
>         at
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
>         at
> org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
> 1000)
>         at
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1093
> )

Reply via email to