天天看點

JSP無法擷取ModelMap裡的值

剛建立了個項目,spring + springmvc + mybatis + maven,在進行頁面傳值時

jsp頁面無法擷取到ModelMap裡傳入的值

@RequestMapping(value="/index")
    public String index(ModelMap model, String name) {
        model.addAttribute("hello", "123");
        return "hello";
    }
           

在jsp頁面直接顯示成了 ${hello}

原因是jsp無法解析 el 表達式,web.xml檔案頭部少了些東西

兩種解決方法 :
  1. 在jsp頁面頂部的page标簽裡加入 isELIgnored=”false”
  1. 在web.xml的頭部加上缺少的内容
//自動生成的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>
  <display-name>Archetype Created Web Application</display-name>
</web-app>
           

将其替換成以下便可(可以從其它的web.xml裡複制)

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:web="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">

</web-app>