On 25/12/2023 04:12, Igal Sapir wrote:
Any thoughts why I get ClassNotFoundException: listeners.ContextListener (and other listeners) when I run Tomcat in an IDE (IntelliJ IDEA)?
It looks like the docBase is set to the source dir for the webapps. That probably means there aren't any compiled classes present hence you get the CNFE.
At a guess, I'd try adding the WEB-INF/classes directories as additional source locations. That should result in the resulting class files being included in the common class loader. It isn't exactly how Tomcat would be configured if running outside of the IDE but results should be the same.
Personally, I haven't tried running Tomcat in an IDE for years. I always run Tomcat from the command line and then use remote debugging. It takes a little bit of setting up, but once configured I found it a lot easier to work with.
YMMV. Mark
SEVERE: Error configuring application listener of class [listeners.ContextListener] java.lang.ClassNotFoundException: listeners.ContextListener Then when I try to make a request jakarta.servlet.jsp.JspFactory.getDefaultFactory() returns null and throws another exception (can be seen at the end of the console output) Here is the console output: /opt/java/jdk-22-ea+29/bin/java -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:46023,suspend=y,server=n --enable-preview -javaagent:/opt/jetbrains/idea-IC-233.13135.103/plugins/java/lib/rt/debugger-agent.jar -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath /workspace/src/tomcat/main/.idea/output/production/tomcat:/opt/java/apache-ant-1.10.8/lib/ant.jar:/workspace/build/tomcat-build-libs/junit-4.13.2/junit-4.13.2.jar:/workspace/build/tomcat-build-libs/ecj-4.29/ecj-4.29.jar:/workspace/build/tomcat-build-libs/easymock-4.3/easymock-4.3.jar:/workspace/build/tomcat-build-libs/hamcrest-2.2/hamcrest-2.2.jar:/workspace/build/tomcat-build-libs/cglib-3.3.0/cglib-nodep-3.3.0.jar:/workspace/build/tomcat-build-libs/objenesis-3.3/objenesis-3.3.jar:/workspace/build/tomcat-build-libs/bnd-7.0.0/biz.aQute.bnd-7.0.0.jar:/workspace/build/tomcat-build-libs/migration-1.0.7/jakartaee-migration-1.0.7-shaded.jar:/workspace/build/tomcat-build-libs/unboundid-6.0.11/unboundid-ldapsdk-6.0.11.jar:/workspace/src/tomcat/main/lib/jmh-core-1.36.jar:/workspace/src/tomcat/main/lib/jopt-simple-5.0.4.jar:/workspace/src/tomcat/main/lib/commons-math3-3.6.1.jar:/workspace/src/tomcat/main/lib/jmh-generator-annprocess-1.36.jar:/opt/jetbrains/idea-IC-233.13135.103/lib/idea_rt.jar org.apache.catalina.startup.Bootstrap Connected to the target VM, address: '127.0.0.1:46023', transport: 'socket' Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Server version name: Apache Tomcat/11.0.x-dev Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Server built: unknown Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Server version number: 11.0.x Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: OS Name: Linux Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: OS Version: 6.2.0-39-generic Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Architecture: amd64 Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Java Home: /opt/java/jdk-22-ea+29 Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: JVM Version: 22-ea+29-2286 Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: JVM Vendor: Oracle Corporation Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: CATALINA_BASE: /workspace/src/tomcat/main Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: CATALINA_HOME: /workspace/src/tomcat/main Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Command line argument: -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:46023,suspend=y,server=n Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Command line argument: --enable-preview Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Command line argument: -javaagent:/opt/jetbrains/idea-IC-233.13135.103/plugins/java/lib/rt/debugger-agent.jar Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Command line argument: -Dfile.encoding=UTF-8 Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Command line argument: -Dsun.stdout.encoding=UTF-8 Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.VersionLoggerListener log INFO: Command line argument: -Dsun.stderr.encoding=UTF-8 Dec 24, 2023 8:04:24 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent INFO: The Apache Tomcat Native library which allows using OpenSSL was not found on the java.library.path: [/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib] Dec 24, 2023 8:04:24 PM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["http-nio-8080"] Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.Catalina load INFO: Server initialization in [929] milliseconds Dec 24, 2023 8:04:24 PM org.apache.catalina.core.StandardService startInternal INFO: Starting service [Catalina] Dec 24, 2023 8:04:24 PM org.apache.catalina.core.StandardEngine startInternal INFO: Starting Servlet engine: [Apache Tomcat/11.0.x-dev] Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory [/workspace/src/tomcat/main/webapps/ROOT] Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deployment of web application directory [/workspace/src/tomcat/main/webapps/ROOT] has finished in [299] ms Dec 24, 2023 8:04:24 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory [/workspace/src/tomcat/main/webapps/host-manager] Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deployment of web application directory [/workspace/src/tomcat/main/webapps/host-manager] has finished in [46] ms Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory [/workspace/src/tomcat/main/webapps/manager] Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deployment of web application directory [/workspace/src/tomcat/main/webapps/manager] has finished in [26] ms Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory [/workspace/src/tomcat/main/webapps/examples] Dec 24, 2023 8:04:25 PM org.apache.catalina.core.StandardContext listenerStart SEVERE: Error configuring application listener of class [listeners.ContextListener] java.lang.ClassNotFoundException: listeners.ContextListener at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1201) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1035) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:480) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:463) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:139) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4320) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4828) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:650) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:711) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1102) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1950) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1012) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:394) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1628) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:273) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:114) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402) at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:345) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:860) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:844) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1299) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1289) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:833) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:913) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.startup.Catalina.start(Catalina.java:793) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:344) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475) Dec 24, 2023 8:04:25 PM org.apache.catalina.core.StandardContext listenerStart SEVERE: Error configuring application listener of class [listeners.SessionListener] java.lang.ClassNotFoundException: listeners.SessionListener at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1201) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1035) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:480) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:463) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:139) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4320) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4828) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:650) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:711) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1102) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1950) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1012) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:394) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1628) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:273) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:114) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402) at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:345) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:860) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:844) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1299) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1289) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:833) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:913) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.startup.Catalina.start(Catalina.java:793) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:344) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475) Dec 24, 2023 8:04:25 PM org.apache.catalina.core.StandardContext listenerStart SEVERE: Error configuring application listener of class [async.AsyncStockContextListener] java.lang.ClassNotFoundException: async.AsyncStockContextListener at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1201) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1035) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:480) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:463) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:139) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4320) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4828) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:650) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:711) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1102) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1950) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1012) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:394) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1628) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:273) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:114) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402) at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:345) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:860) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:844) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1299) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1289) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:833) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:913) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.startup.Catalina.start(Catalina.java:793) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:344) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475) Dec 24, 2023 8:04:25 PM org.apache.catalina.core.StandardContext listenerStart SEVERE: Error configuring application listener of class [websocket.drawboard.DrawboardContextListener] java.lang.ClassNotFoundException: websocket.drawboard.DrawboardContextListener at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1201) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1035) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:480) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:463) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:139) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4320) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4828) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:650) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:711) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1102) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1950) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1012) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:394) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1628) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:273) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:114) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402) at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:345) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:860) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:844) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1299) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1289) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:833) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:240) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:433) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:913) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) at org.apache.catalina.startup.Catalina.start(Catalina.java:793) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:344) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475) Dec 24, 2023 8:04:25 PM org.apache.catalina.core.StandardContext listenerStart SEVERE: Skipped installing application listeners due to previous error(s) Dec 24, 2023 8:04:25 PM org.apache.catalina.core.StandardContext startInternal SEVERE: One or more listeners failed to start. Full details will be found in the appropriate container log file Dec 24, 2023 8:04:25 PM org.apache.catalina.core.StandardContext startInternal SEVERE: Context [/examples] startup failed due to previous errors Dec 24, 2023 8:04:25 PM org.apache.catalina.loader.WebappClassLoaderBase checkThreadLocalsForLeaks WARNING: You need to add "--add-opens=java.base/java.lang=ALL-UNNAMED" to the JVM command line arguments to enable ThreadLocal memory leak detection. Alternatively, you can suppress this warning by disabling ThreadLocal memory leak detection. Dec 24, 2023 8:04:25 PM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesRmiTargets WARNING: You need to add "--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" to the JVM command line arguments to enable RMI Target memory leak detection. Alternatively, you can suppress this warning by disabling RMI Target memory leak detection. Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deployment of web application directory [/workspace/src/tomcat/main/webapps/examples] has finished in [68] ms Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory [/workspace/src/tomcat/main/webapps/docs] Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deployment of web application directory [/workspace/src/tomcat/main/webapps/docs] has finished in [16] ms Dec 24, 2023 8:04:25 PM org.apache.coyote.AbstractProtocol start INFO: Starting ProtocolHandler ["http-nio-8080"] Dec 24, 2023 8:04:25 PM org.apache.catalina.startup.Catalina start INFO: Server startup in [543] milliseconds Dec 24, 2023 8:04:41 PM org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for servlet [jsp] in context with path [] threw exception [org.apache.jasper.JasperException: Unable to compile class for JSP] with root cause java.lang.NullPointerException: Cannot invoke "jakarta.servlet.jsp.JspFactory.getJspApplicationContext(jakarta.servlet.ServletContext)" because the return value of "jakarta.servlet.jsp.JspFactory.getDefaultFactory()" is null at org.apache.jasper.compiler.Validator$ValidateVisitor.<init>(Validator.java:519) at org.apache.jasper.compiler.Validator.validateExDirectives(Validator.java:1812) at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:229) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:396) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:372) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:356) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:602) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:396) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:357) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:305) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:716) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:673) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:338) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:389) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1749) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:1570)