Ruben Laguna's blog

Apr 13, 2007 - 1 minute read - classloader devloader eclipse HttpSessionListener java loader NoClassDefFoundError ServletContextListener sysdeo tomcat

(Tomcat 5.5.x) java.lang.NoClassDefFoundError: javax/servlet/http/HttpSessionListener

Or java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener for that matter. NoClassDefFoundError on HttpSessionListener , ServletListener , ServletContextListener, etc. can be caused by a custom classloader like Sysdeo DevLoader (I use it with Eclipse) in you Context definition in the Tomcat’s server.xml file.

<Loader classname="org.apache.catalina.loader.DevLoader"
        reloadable="true" debug="1" />

the solution: add

useSystemClassLoaderAsParent="false"

to the Loader

<Loader classname="org.apache.catalina.loader.DevLoader" 
        reloadable="true"
        debug="1" useSystemClassLoaderAsParent="false"/>

This should do the trick. More information here and here