Re: move to tomcat 11, now see a jasper dependency

Mark Thomas <[email protected]> Thu, 29 Jan 2026 12:24:00 +0100
Newsgroups gmane.comp.jakarta.tomcat.user
Message-ID <[email protected]>
On 29/01/2026 06:11, Rob Sargent wrote:
> I am moving an app from tomcat 9.0.100+ to 11.0.5.  The conversion tool 
> worked well and quickly got to a clean compile. At Tomcat.start() I get 
> a stacktrace mentioning jasper.  There are no JSPs in my system:

Looks like you are missing a call to set addDefaultWebXmlToWebapp to 
false. The code is the same in 9.0.x and 11.0.x and should be on both 
versions. Not sure why you are seeing the difference between 9.0.x and 
11.0.x.

Mark


> 
>     SEVERE: Servlet [jsp] in web application [/sgs] threw load() exception
>     java.lang.ClassNotFoundException: org.apache.jasper.servlet.JspServlet
>          at
>     
> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1225)
>          at
>     
> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1056)
>          at
>     
> org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:474)
>          at
>     
> org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:457)
>          at
>     
> org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:139)
>          at
>     
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:753)
>          at
>     org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:693)
>          at
>     
> org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4177)
>          at
>     
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4460)
>          at
>     org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)
>          at
>     
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1162)
>          at
>     
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1158)
>          at
>     java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
>          at
>     
> org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:81)
>          at
>     java.base/ 
> java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145)
>          at
>     
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:714)
>          at
>     
> org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:780)
>          at
>     org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)
>          at
>     
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1162)
>          at
>     
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1158)
>          at
>     java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
>          at
>     
> org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:81)
>          at
>     java.base/ 
> java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145)
>          at
>     
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:714)
>          at
>     
> org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:201)
>          at
>     org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)
>          at
>     
> org.apache.catalina.core.StandardService.startInternal(StandardService.java:410)
>          at
>     org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)
>          at
>     
> org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:864)
>          at
>     org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)
>          at org.apache.catalina.startup.Tomcat.start(Tomcat.java:435)
>          at
>     edu.utah.camplab.server.SGSSelector.kickOff(SGSSelector.java:186)
>          at edu.utah.camplab.server.SGSSelector.run(SGSSelector.java:198)
>          at java.base/java.lang.Thread.run(Thread.java:1583)
> 
> 
>     where lines 186/186 are:
>          embeddedTomcat.start();
>          embeddedTomcat.getServer().await();
>