我刚刚升级了一个Spring MVC应用程序,版本3.2
到4.0.2
,我的视图标记不再工作了。
错误:
java.lang.ClassNotFoundException: org.springframework.web.util.ExpressionEvaluationUtils
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547)
org.springframework.web.servlet.tags.MessageTag.resolveMessage(MessageTag.java:215)
org.springframework.web.servlet.tags.MessageTag.doStartTagInternal(MessageTag.java:166)
org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:80)
org.apache.jsp.views.templates.main_jsp._jspx_meth_spring_005fmessage_005f0(main_jsp.java:570)
类ExpressionEvaluationUtils在Spring 3.2
中已弃用,在4.x.
中已删除
我正在使用Eclipse IDE运行Tomcat 7.0.50。
我错过了什么?
Belo是我配置的一些部分。
<java-version>1.7</java-version>
<org.springframework-version>4.0.2.RELEASE</org.springframework-version>
<spring-security.version>3.2.1.RELEASE</spring-security.version>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${org.springframework-version}</version>
<exclusions>
<!-- Exclude Commons Logging in favor of SLF4j -->
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
<exclusion>
<artifactId>spring-aop</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${org.springframework-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${org.springframework-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${org.springframework-version}</version>
</dependency>
3条答案
按热度按时间pw9qyyiw1#
如果您在升级spring时没有更改JSP,那么您可能有来自旧spring版本的旧编译的JSP(stacktrace中的 *. tags.MessageTag. *)。清除您的tomcat工作目录以重新编译JSP,然后重试。
n3h0vuf22#
您还需要将spring-security依赖项更新到4.0.n.RELEASE版本。
axr492tv3#
我刚刚发现你需要把jsp-config的
web.xml
改为ignore-el = true
。现在可以了。