tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ghodmode <ghodm...@ghodmode.com>
Subject Re: NoClassDefFoundError, Tomcat isn't seeing JARs in webapps/<appname>/lib?
Date Tue, 04 Sep 2007 12:59:44 GMT
I'm happy to say that I have discovered the solution to this problem as well
as my problem with NoClassDefFoundError for HttpServlet...

The problem seemed intermittent and now I know why.  It depended on what
directory I was in when I started Tomcat.

I wanted to save myself some typing, so I made symbolic links to
$CATALINA_HOME/bin/startup.sh and $CATALINA_HOME/shutdown.sh and put them in
~/bin, which I've added to my path.

I know there is some code in those shell scripts to detect if the command
that called it is a symbolic link and take appropriate actions based on
that, but I guess it doesn't work perfectly.

I've changed my symlinks to actual scripts, with two lines each.  Change to
the Tomcat directory, then run startup.sh.  Now everything works fine every
time :)

Thank you all for your time and consideration.

-- Vince

On 9/4/07, Ghodmode <ghodmode@ghodmode.com> wrote:
>
> This is related to my previous email thread, but slightly different
> circumstances.
>
> Apache Tomcat 6.0.14
> Java 1.6.0_02-b05
> Wicket 1.3.0-beta3
>
> I'm trying to run a Wicket application and it's not working.  I'm getting
> a NoClassDefFoundError:
>
> java.lang.NoClassDefFoundError:
> org/apache/wicket/protocol/http/WebApplication
>
> I think I must be misunderstanding something basic about Tomcat web
> application deployment.
>
> So, I create a basic "HelloWorld" type servlet to try and troubleshoot the
> problem.
>
> I've double- and triple-checked the package against the documentation and
> even verified it by listing the contents of the JAR with unzip.
>
> What am I doing wrong?
>
> The Wicket JAR file and two of its dependencies are in WEB-INF/lib:
> @home:~/dev/tomcat/webapps/HelloWicket/WEB-INF/classes$ ls -ltr ../lib
> total 1648
> -rw-r--r-- 1 vince vince 1657246 2007-09-04 10:00 wicket-1.3.0-beta3.jar
> -rw-r--r-- 1 vince vince    7449 2007-09-04 10:00 slf4j-simple-1.4.3.jar
> -rw-r--r-- 1 vince vince   15345 2007-09-04 10:00 slf4j-api-1.4.3.jar
>
>
> Here's my web.xml:
> @home:~/dev/tomcat/webapps/HelloWicket/WEB-INF$ cat web.xml
> <?xml version="1.0" encoding="UTF-8"?>
> <!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>
>         <context-param>
>                 <param-name>configuration</param-name>
>                 <param-value>development</param-value>
>         </context-param>
>
>         <servlet>
>                 <servlet-name>HelloWicket</servlet-name>
>                 <servlet-class>
> org.apache.wicket.protocol.http.WicketServlet</servlet-class>
>                 <init-param>
>                         <param-name>applicationClassName</param-name>
>                         <param-value>mypackage.HelloWicketApp
> </param-value>
>                 </init-param>
>                 <load-on-startup>1</load-on-startup>
>         </servlet>
>
>         <servlet-mapping>
>                 <servlet-name>HelloWicket</servlet-name>
>                 <url-pattern>/helloWicket/*</url-pattern>
>         </servlet-mapping>
> </web-app>
>
> Here's the layout of my servlet's directory:
> @home:~/dev/tomcat/webapps/HelloWicket$ ls -ltrR
> .:
> total 8
> -rw-r--r-- 1 vince vince   44 2007-09-04 10:00 index.html
> drwxr-xr-x 4 vince vince 4096 2007-09-04 10:27 WEB-INF
>
> ./WEB-INF:
> total 12
> drwxr-xr-x 2 vince vince 4096 2007-09-04 10:00 lib
> drwxr-xr-x 3 vince vince 4096 2007-09-04 10:05 classes
> -rwxr-xr-x 1 vince vince  755 2007-09-04 10:08 web.xml
>
> ./WEB-INF/lib:
> total 1648
> -rw-r--r-- 1 vince vince 1657246 2007-09-04 10:00 wicket-1.3.0-beta3.jar
> -rw-r--r-- 1 vince vince    7449 2007-09-04 10:00 slf4j-simple-1.4.3.jar
> -rw-r--r-- 1 vince vince   15345 2007-09-04 10:00 slf4j-api-1.4.3.jar
>
> ./WEB-INF/classes:
> total 8
> -rw-r--r-- 1 vince vince  601 2007-09-04 10:04 HelloWicket.html
> drwxr-xr-x 2 vince vince 4096 2007-09-04 10:20 mypackage
>
> ./WEB-INF/classes/mypackage:
> total 16
> -rw-r--r-- 1 vince vince 238 2007-09-04 10:06 HelloWicket.java
> -rw-r--r-- 1 vince vince 192 2007-09-04 10:20 HelloWicketApp.java
> -rw-r--r-- 1 vince vince 468 2007-09-04 10:20 HelloWicket.class
> -rw-r--r-- 1 vince vince 347 2007-09-04 10:20 HelloWicketApp.class
>
>
> Thank you,
>     Vince
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message