Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Wrapper cannot find servlet class Eclipse stopped generating class files for Tomcat

I did the following:

  1. Run As > Run on Server.
  2. It was working fine until a javascript error came out, not sure why and hung the screen. So I killed Eclipse using the task manager.
  3. Repeating task 1 no longer generates the class files I need to run the servlet with the following exception:

Wrapper cannot find servlet class etc.

So, did something go off to stop it from compiling or something? Anyone have any ideas?

javax.servlet.ServletException: Wrapper cannot find servlet class     com.something.media.MediaServlet or a class it depends on
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
java.lang.Thread.run(Unknown Source)

root cause

java.lang.ClassNotFoundException: com.something.media.MediaServlet
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
java.lang.Thread.run(Unknown Source)
like image 971
Maurice Avatar asked Dec 04 '25 13:12

Maurice


1 Answers

Either Tomcat's work directory or Eclipse's build directory is dirty. To solve both, do in Eclipse:

  • Remove the project from Tomcat deployments by rightclick, Add/remove projects on Tomcat.
  • Close the project by rightclick project and Close.
  • Rightclick the Tomcat instance and choose Clean.
  • Open the project by rightclick project and Open.
  • Clean the project by Project > Clean.
  • Add the project to Tomcat again and continue deploying.
like image 84
BalusC Avatar answered Dec 07 '25 08:12

BalusC