spring mvc EL ModelAndView的 Model 值 在jsp中不显示

转载 2016年08月29日 11:59:59
问题:
spring mvc开发过程中, 经常会给model addAttribute, 然后通过EL在jsp中显示,比如 ${msg}, 
但是有时候会出现jsp最后显示的还是${msg},而不是msg赋值过的

Spring Controller


import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;
 
public class ABCController extends AbstractController{
 
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request,
HttpServletResponse response) throws Exception {
 
ModelAndView model = new ModelAndView("HelloWorldPage");
model.addObject("msg", "hello world");
 
return model;
}
 
}
JSP page


<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<body>
             ${msg}
</body>
</html>
解决方法:
原因在于老的JSP 1.2 声明.


1. JSP 1.2
如果你用的jsp1.2版本的DTD
web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >
 
<web-app>
//...
</web-app>
EL是默认关闭的。。。必须手动打开。<%@ page isELIgnored="false" %>


<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<%@ page isELIgnored="false" %>
</head>
<body>
           ${msg}
</body>
</html>


2. JSP 2.0
JSP2.0默认是打开支持EL的,所以声明jsp2.0就可以直接用了。
web.xml

<web-app id="WebApp_ID" version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
//...
</web-app>

相关文章推荐

ModelAndView传递参数到JSP页面

Java代码: @RequestMapping("/sq-condition/{type}") public ModelAndView sqCondition(@PathVariable(value...
  • boonya
  • boonya
  • 2017年02月07日 10:06
  • 2081

SpringMVC中JSP取不到ModelAndView的数据原因

因为maven自动生成的web.xml文件的版本为v2.3的,如下,与使用的servlet和tomcat不匹配;需要将版本改为v2.5以上版本 web.xml v2.3 [ht...

spring mvc EL ModelAndView的 Model 值 在jsp中不显示

问题: spring mvc开发过程中, 经常会给model addAttribute, 然后通过EL在jsp中显示,比如 ${msg},  但是有时候会出现jsp最后显示的还是${msg},而不...

spring mvc EL ModelAndView的 Model 值 在jsp中不显示

问题: spring mvc开发过程中, 经常会给model addAttribute, 然后通过EL在jsp中显示,比如 ${msg},  但是有时候会出现jsp最后显示的还是${msg},而不...
  • problc
  • problc
  • 2014年04月15日 16:35
  • 22096

SpringMVC通过ModelAndView向JSP页面传值

SpringMVC通过ModelAndView向JSP页面传值 Controller的写法: @Controller @RequestMapping("/auth") pu...

SpringMVC中JSP取不到ModelAndView的数据原因

自己搭的项目突然EL表达式取不到值了 不管是用 ${msg} 还是用JSTL的 都不行 才发现犯了一个平时不会注意的错误  我是用maven自动生成的web.xml文件 如下: ...
  • shasiqq
  • shasiqq
  • 2016年04月22日 17:04
  • 1731

SpringMVC项目JSP取不到ModelAndView的数据解决

使用maven构建的springmvc项目EL表达式取不到值 不管是用 ${msg} 还是用JSTL的 都不行 我是用maven自动生成的web.xml文件 如下: "-//Sun Micr...

spring mvc ModelAndView向前台传值

今天在做项目的时候遇到一个问题,把第一个页面保存的id传到第三个页面中去用,原来是在controller层加了一个全局变量控制的,但是后来发现这个变量实现不了我要的功能,于是查了一下,原来ModelA...
  • pql925
  • pql925
  • 2016年03月13日 08:40
  • 419

Spring mvc 实例 --JSTL结合EL实现JSP获取后台List回显界面

JSTL 和 EL 间的关系 【详见 java web前端瘦身器】,从该篇博客可以看出,JSTL是java web前台页面标签的集合,形成了一套规范,利用JSTL标签显示数据。EL表达式...

Spring-MVC中ModelAndView对象所添加的内容在前端用EL表达式获取不到的问题

原来是IntelliJ IDEA默认生成的web.xml文档的头部不正确 Archetype Cr
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring mvc EL ModelAndView的 Model 值 在jsp中不显示
举报原因:
原因补充:

(最多只允许输入30个字)