hi Chris, I am following advice from ClassNotFoundException: javax.servlet.jsp.JspFactory
| | | | | | | | | | | ClassNotFoundException: javax.servlet.jsp.JspFactory I have a maven-based app that I copied exactly and tried to run mvn jetty:run And now getting this error:Cau... | | | where it says scope provided must be added Anwyay, I have removed the scope and the jars that are put in the lib folder in WEB-INF, it is no use. The same error still persists. I removed <scope>provided<scope> on all the Jakarat ee replated dependencies as shown in the pom just now. Hope you could advise me now. Tks. On Wednesday, March 1, 2023 at 10:19:18 PM GMT+8, Christopher Schultz <ch...@christopherschultz.net> wrote: Karen, On 3/1/23 09:09, Karen Goh wrote: > Hello experts, > I need desperate help to fix this java.lang.ClassNotFoundException: > jakarta.servlet.jsp.JspFactory > Here are my dependencies which I have installed but still Tomcat will still > purge out the ClassNotFound error : > <dependencies> > <dependency> > <groupId>com.fasterxml.jackson.core</groupId> > <artifactId>jackson-databind</artifactId> > <version>2.13.3</version> > </dependency> > <!-- >https://mvnrepository.com/artifact/com.squareup.retrofit2/retrofit --> > <dependency> > <groupId>com.squareup.retrofit2</groupId> > <artifactId>retrofit</artifactId> > <version>2.9.0</version> > </dependency> > <dependency> > <groupId>com.squareup.retrofit2</groupId> > <artifactId>converter-gson</artifactId> > <version>2.9.0</version> > </dependency> > <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson --> > <dependency> > <groupId>com.google.code.gson</groupId> > <artifactId>gson</artifactId> > <version>2.10.1</version> > </dependency> > <!-- >https://mvnrepository.com/artifact/jakarta.servlet.jsp.jstl/jakarta.servlet.jsp.jstl-api > --> > <dependency> > <groupId>jakarta.servlet.jsp.jstl</groupId> > <artifactId>jakarta.servlet.jsp.jstl-api</artifactId> > <version>3.0.0</version> > <scope>provided</scope> > </dependency> > <!-- >https://mvnrepository.com/artifact/jakarta.platform/jakarta.jakartaee-web-api >--> > <dependency> > <groupId>jakarta.platform</groupId> > <artifactId>jakarta.jakartaee-web-api</artifactId> > <version>10.0.0</version> > <scope>provided</scope> > </dependency> > <dependency> > <groupId>jakarta.servlet</groupId> > <artifactId>jakarta.servlet-api</artifactId> > <version>6.0.0</version> > <scope>provided</scope> > </dependency> > <dependency> > <groupId>org.glassfish.web</groupId> > <artifactId>jakarta.servlet.jsp.jstl</artifactId> > <version>3.0.1</version> > <scope>provided</scope> > </dependency> > <dependency> > <groupId>jakarta.el</groupId> > <artifactId>jakarta.el-api</artifactId> > <version>5.0.0</version> > <scope>provided</scope> > </dependency> > > I have even attached the jar - jakarta.servlet.jsp.jstl-3.0.1.jar > jakarta.servlet.jsp.jstl-api-3.0.0.jarto the lib folder. > Java 17, Eclipse on Windows 10. > I am not sure how to tackle this problem, as I need to get an assignment > done.Would appreciate advice from this group.Tks. Your POM shows both jstl artifacts as "provided" meaning they won't be downloaded and bundled into your application. I think you actually need to allow those to be downloaded as they are not provided by Tomcat (I think! I'm no JSTL expert). But Tomcat definitely ships with a copy of jakarta.servlet.jsp.JspFactory so if you are adding a JAR which contains that class, you are likely causing a conflict. Tomcat really should be prohibiting that class from being provided by an application, but maybe you have put it somewhere that is confusing the JVM. Which lib/ folder did you put those JARs into? -chris --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org