1

我正在尝试设置一个我将在自定义 JSP 标记中引用的变量,所以我的 JSP 中有这样的内容:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="path" value="test"/>

但是,当 JSP 运行时出现此错误:

java.lang.AbstractMethodError: javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext;
    at org.apache.taglibs.standard.tag.common.core.SetSupport.doEndTag(SetSupport.java:140)

我正在运行带有 JSTL 1.2 的 Tomcat 5.5 和 Java 1.5。

我在这里做错了吗?

谢谢!

4

3 回答 3

5

这似乎出现了很多。我们将 Hadoop 作为依赖项,并且必须进行多次排除。其中一些可能是多余的,但这最终奏效了。我应该注意到,在我开始将 Jasper 排除在底部之前,没有任何变化。

<exclusions>
    <exclusion>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jsp-2.1</artifactId>
    </exclusion>
    <exclusion>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jsp-api-2.1</artifactId>
    </exclusion>
    <exclusion>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jsp-api</artifactId>
    </exclusion>
    <exclusion>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>servlet-api</artifactId>
    </exclusion>
    <exclusion>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>servlet-api-2.5</artifactId>
    </exclusion>
    <exclusion>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jetty</artifactId>
    </exclusion>
    <exclusion>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jetty-util</artifactId>
    </exclusion>
    <exclusion>
        <groupId>tomcat</groupId>
        <artifactId>jasper-compiler</artifactId>
    </exclusion>
    <exclusion>
        <groupId>tomcat</groupId>
        <artifactId>jasper-runtime</artifactId>
    </exclusion>
</exclusions>
于 2013-03-05T19:03:46.820 回答
2

看起来你可能有一些版本问题,也许是某种冲突的 jar 文件。看这里,也许会有所帮助。如果您无法解决它,您需要提供有关您的运行时环境的更多信息。

于 2009-02-12T17:32:24.223 回答
1

Tomcat 5.5 不支持 JSTL 1.2 使用的 Servlet API 2.5。

升级到 Tomcat 6.0 或降级 Servlet/JSP/JSTL 版本。

http://tomcat.apache.org/whichversion.html

于 2009-04-20T10:36:38.550 回答