java.lang.AbstractMethodError:javax.servlet.jsp.JspFactory.getJspApplicationContext

时间:2016-03-08 23:46:37

标签: jsp tomcat jstl

我有一个包含jsp servlet的Spring 3 / Tomcat7 / Servlet 2.4应用程序。应用程序在Eclipse / Tomcat上构建和运行,但在独立服务器上部署时会失败。例外是:

SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.AbstractMethodError: javax.servlet.jsp.JspFactory.getJspApplicationContext(Ljavax/servlet/ServletContext;)Ljavax/servlet/jsp/JspApplicationContext;
    at org.apache.jasper.compiler.Validator$ValidateVisitor.<init>(Validator.java:515)
    at org.apache.jasper.compiler.Validator.validateExDirectives(Validator.java:1817)
    at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:217)

到目前为止,我已经确定“AbstractMethodError”表示方法的编译版本和部署版本之间可能存在不兼容性(?)。

另外,我在pom中包含jstl版本1.1.2 - 我想知道org.apache.jasper.compiler是否会发生某些事情以及与Tomcat的兼容性?

包含在jstl jar中的javax.servlet.ServletContext但是如果我在pom中排除了这个异常仍然存在

我正在使用Java 1.7构建并运行相同的。

任何帮助表示赞赏.....

1 个答案:

答案 0 :(得分:2)

好的..问题已经解决并记录在这里,如果其他人可能会这样偏离。 该应用程序正在运行多个应用程序的Tomcat测试服务器上运行。事实证明,在另一个应用程序中的一些罐子和这个罐子之间存在冲突 - 很可能是Vaadin罐子。这两个应用程序都将单独运行,但不会在同一个Tomcat实例上运行。我想这只是在tomcat实例中运行单个应用程序的一个很好的理由......