在jsp页面中使用EL表达式无法解析spring mvc中Model或者ModelAndView传的值

时间:2022-10-01 19:16:04

1、在spring-mvc的配置文件中已经配置jsp的视图解析器

<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/page/" />
<property name="suffix" value=".jsp" />
</bean>

2、在Controller中使用Model的addAttribute方法添加属性msg

3、在jsp页面中使用${msg}取msg属性的值失败

4、失败原因:使用maven新建web工程时,可能会新建一个基于老的jsp1.2的工程,而jsp1.2版本默认情况下是禁用EL表达式的。

如果在web.xml中出现如下信息,则证明工程是jsp1.2的工程:

在jsp页面中使用EL表达式无法解析spring mvc中Model或者ModelAndView传的值

5、解决方法:

第一种方法:在需要解析Model或者ModelAndView的jsp页面中添加:<%@ page isELIgnored="false" %>

第二种方法:在web.xml文件中的<web-app>标签中添加: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"属性

在jsp页面中使用EL表达式无法解析spring mvc中Model或者ModelAndView传的值