首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EL上的Tomcat 7 LinkageError问题

问EL上的Tomcat 7 LinkageError问题
EN

Stack Overflow用户
提问于 2011-12-15 23:18:07
回答 1查看 1.8K关注 0票数 1

专家们,

我最近在tomcat 7.0.23中试用了我的Spring MVC应用程序。依赖管理是在Maven中实现的。我得到以下错误:

代码语言:javascript
复制
java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Ljavax/el/ExpressionFactory;" the class loader (instance of org/apache/jasper/servlet/JasperLoader) of the current class, org/apache/jsp/WEB_002dINF/jsp/login_jsp, and the class loader (instance of org/apache/catalina/loader/StandardClassLoader) for resolved class, javax/servlet/jsp/JspApplicationContext, have different Class objects for the type avax/el/ExpressionFactory; used in the signature

同样的应用程序在glassfish中工作得很好。我不知道这里出了什么问题。

以下是pom.xml的摘录:

代码语言:javascript
复制
    <java-version>1.7</java-version>
    <java.servlet.version>2.5</java.servlet.version>
    <java.servlet.jsp.version>2.1</java.servlet.jsp.version>
    <java.servlet.jstl.version>1.2</java.servlet.jstl.version>


    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>${java.servlet.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>${java.servlet.jsp.version}</version>
        <scope>provided</scope>

    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>${java.servlet.jstl.version}</version>
    </dependency>

    <dependency>
        <groupId>javax.el</groupId>
        <artifactId>el-api</artifactId>
        <version>2.2</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>org.glassfish.web</groupId>
        <artifactId>el-impl</artifactId>
        <version>2.2</version>
        <scope>runtime</scope>
    </dependency>

我尝试过很多不同帖子中提到的库的组合,但仍然没有成功。任何建议都很感谢。

EN

回答 1

Stack Overflow用户

发布于 2012-09-18 07:08:37

Tomcat 7实现了JSP版本2.2 (Tomcat 6具有JSP版本2.1),因此需要进行更改

代码语言:javascript
复制
<java.servlet.jsp.version>2.1</java.servlet.jsp.version>

至

代码语言:javascript
复制
<java.servlet.jsp.version>2.2</java.servlet.jsp.version>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8522329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档