I'm happy to say that I have discovered the solution to this problem as well as my problem with NoClassDefFoundError for HttpServlet...
It wasn't related to Wicket in any way. 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 <[EMAIL PROTECTED]> wrote: > > I'm having a problem deploying a Wicket application, so I create a basic > HelloWicket app and I'm still getting the problem: > > java.lang.NoClassDefFoundError: > org/apache/wicket/protocol/http/WebApplication > > Apache Tomcat 6.0.14 > Java 1.6.0_02-b05 > Wicket 1.3.0-beta3 > > I think that this is a Tomcat problem. Maybe I'm misunderstanding > something basic about application deployment on Tomcat. This is currently > only affecting my Wicket app, but that's the only thing on there other than > HelloWorld servlets. > > 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:[EMAIL PROTECTED]:~/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>[/code] > > Here's the layout of my servlet's > directory:[EMAIL PROTECTED]:~/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[/code] > > Thank you, > Vince