Note that there are some explanatory texts on larger screens.

plurals
  1. PONoClassDefFoundError - javax/el/ExpressionFactory - Tomcat 7 and Spring MVC
    text
    copied!<p>I am trying to deploy to tomcat 7 a little Spring MVC app, and I am getting the dreaded exception:</p> <pre><code>java.lang.NoClassDefFoundError: javax/el/ExpressionFactory org.apache.jasper.runtime.JspApplicationContextImpl.getExpressionFactory(JspApplicationContextImpl.java:108) org.apache.jasper.compiler.Validator$ValidateVisitor.&lt;init&gt;(Validator.java:514) org.apache.jasper.compiler.Validator.validateExDirectives(Validator.java:1795) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:217) org.apache.jasper.compiler.Compiler.compile(Compiler.java:373) org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) </code></pre> <p>I don't see any usual suspects in my WEB-INF/lib that is deployed (servlet-api.jar, el-api.jar, etc.).</p> <p>Here is my pom.xml file:</p> <pre><code>&lt;!-- Servlet --&gt; &lt;dependency&gt; &lt;groupId&gt;javax.servlet&lt;/groupId&gt; &lt;artifactId&gt;servlet-api&lt;/artifactId&gt; &lt;version&gt;2.5&lt;/version&gt; &lt;scope&gt;provided&lt;/scope&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;javax.servlet.jsp&lt;/groupId&gt; &lt;artifactId&gt;jsp-api&lt;/artifactId&gt; &lt;version&gt;2.1&lt;/version&gt; &lt;scope&gt;provided&lt;/scope&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;javax.servlet&lt;/groupId&gt; &lt;artifactId&gt;jstl&lt;/artifactId&gt; &lt;version&gt;1.2&lt;/version&gt; &lt;scope&gt;provided&lt;/scope&gt; &lt;/dependency&gt; </code></pre> <p>I am basically trying to load a simple jsp page. I know that Tomcat is choking compiling the jsp page using Jasper because it is hitting this Class Loader issue, but I can't figure out why.</p> <p>My only guess is that either I need to package a library that I am not, or perhaps add a library to the tomcat/lib.</p> <p>Here are the list of jars in my WEB-INF/lib</p> <pre><code>activation-1.1.jar antlr-2.7.6.jar aopalliance-1.0.jar aspectjrt-1.6.6.jar aspectjweaver-1.6.6.jar commons-collections-3.2.jar commons-dbcp-1.2.2.jar commons-fileupload-1.2.1.jar commons-io-1.4.jar commons-lang-2.1.jar commons-logging-1.1.1.jar commons-pool-1.3.jar dom4j-1.6.1.jar ehcache-core-2.3.0.jar freemarker-2.3.15.jar groovy-all-1.8.5.jar guava-12.0.jar hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-3.3.1.GA.jar hibernate-entitymanager-4.1.0.Final.jar hibernate-jpa-2.0-api-1.0.1.Final.jar hibernate-validator-4.1.0.Final.jar hsqldb-1.8.0.7.jar jacks_2.10-2.1.4.jar jackson-annotations-2.1.4.jar jackson-core-2.1.4.jar jackson-core-asl-1.9.9.jar jackson-databind-2.1.4.jar javassist-3.15.0-GA.jar javax.inject-1.jar jboss-logging-3.1.0.CR2.jar jboss-transaction-api_1.1_spec-1.0.0.Final.jar jcl-over-slf4j-1.6.6.jar jettison-1.1.jar joda-time-1.6.2.jar jsr305-1.3.9.jar log4j-1.2.17.jar logback-classic-1.0.7.jar logback-core-1.0.7.jar mail-1.4.6-rc1.jar mysql-connector-java-5.1.18.jar ognl-3.0.5.jar scala-compiler-2.10.1.jar scala-library-2.10.1.jar scala-reflect-2.10.0.jar scalap-2.10.1.jar slf4j-api-1.7.5.jar slf4j-log4j12-1.6.6.jar snakeyaml-1.11.jar spring-aop-3.2.2.RELEASE.jar spring-batch-admin-manager-1.3.0.BUILD-20130514.094516-16.jar spring-batch-admin-resources-1.3.0.BUILD-20130514.094516-17.jar spring-batch-core-2.2.0.BUILD-20130514.030108-700.jar spring-batch-infrastructure-2.2.0.BUILD-20130514.030108-714.jar spring-batch-integration-1.3.0.BUILD-20130514.094516-17.jar spring-beans-3.2.2.RELEASE.jar spring-context-3.2.2.RELEASE.jar spring-context-support-3.2.2.RELEASE.jar spring-core-3.2.2.RELEASE.jar spring-expression-3.2.2.RELEASE.jar spring-integration-core-2.2.3.RELEASE.jar spring-integration-file-2.2.3.RELEASE.jar spring-integration-groovy-2.2.3.RELEASE.jar spring-integration-http-2.2.3.RELEASE.jar spring-integration-jms-2.2.3.RELEASE.jar spring-integration-jmx-2.2.3.RELEASE.jar spring-integration-mail-2.2.3.RELEASE.jar spring-integration-scripting-2.2.3.RELEASE.jar spring-integration-stream-2.2.3.RELEASE.jar spring-integration-twitter-2.2.3.RELEASE.jar spring-integration-ws-2.2.3.RELEASE.jar spring-integration-xml-2.2.3.RELEASE.jar spring-jdbc-3.2.2.RELEASE.jar spring-jms-3.2.2.RELEASE.jar spring-oxm-1.5.9.jar spring-oxm-3.2.2.RELEASE.jar spring-retry-1.0.2.RELEASE.jar spring-scala-1.0.0.M2.jar spring-security-config-3.2.0.M1.jar spring-security-core-3.2.0.M1.jar spring-security-crypto-3.1.0.RELEASE.jar spring-security-web-3.2.0.M1.jar spring-social-core-1.0.1.RELEASE.jar spring-social-twitter-1.0.1.RELEASE.jar spring-tx-3.2.2.RELEASE.jar spring-web-3.2.2.RELEASE.jar spring-webmvc-3.2.2.RELEASE.jar spring-ws-core-1.5.9.jar spring-xml-1.5.9.jar thymeleaf-2.0.15.jar thymeleaf-layout-dialect-1.0.5.jar thymeleaf-spring3-2.0.15.jar wsdl4j-1.6.1.jar xml-apis-1.0.b2.jar xpp3_min-1.1.4c.jar xstream-1.3.jar </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload