views:

331

answers:

1

I have a simple web application (one jsp and one servlet) file that I've copied into jboss-4.0.2/server/default/deploy folder and it has successfully hot deployed as I can access the jsp page. However, when I invoke the servlet, I am getting a java.lan.NoClassDefFoundError.

I suspect that the jars under the WEB-INF/lib directory within the war is not being picked up.

The structure of my war is:

META-INF  
  -->  MANIFEST.MF  
WEB-INF  
  -->  classes  
          --> ...*.classes  
  -->  lib  
          --> jcommon-1.0.16.jar  
              jfreechart-1.0.13.jar  
              servlet-api.jar  
index.jsp  

Anybody else have classloading issues in JBoss 4?

Many thanks.

+1  A: 

At the very least, you should not have the servlet-api.jar file in there. Those classes should all be provided by the Servlet container (in your case, JBoss).

Adam Batkin
I agree. It's just there as it's in the version control system. Note that the war works fine in Tomcat 6.
boongywoongy
(+1) The `servlet-api.jar` could cause weird classloading issues in JBoss, which has a very different classloader to Tomcat.
skaffman