Is the ApplicationListener class being deployed into Tomcat's classpath?
Where is it defined? In your project's source or in a jar? If it's in a
jar, you need to make sure that the jar is being deployed.
If it's source, the Tomcat publish/launch is sometimes bad at picking up
changes (although not normally with Java files). Try right clicking the
server in the Server view, stop it, clean, clean tomcat working directory
and then restart.