zoukankan      html  css  js  c++  java
  • 关于modelmap.addAttribute("",)转到jsp页面获取不到值的问题

    问题一,可能是你设置的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 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_2_3.dtd,这就导致后面的servlet、jsp、EL等采用的全是2.3版本,而在2.3版本中,jsp页面是不支持EL的,所以当我们在jsp中使用语句${requestScope.test} ,无法得到正确的解析。

    将他设置为3.0以上的版本即可

    把DOCTYPE 引掉,然后在web-app中,黏贴如下代码
    
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
             id="WebApp_ID" version="3.0">

    问题二:可能就是你controller设置的返回值有问题

    一开始我是设置成转发重定向的

    modelMap.addAttribute("test",stest);
            request.getRequestDispatcher("WEB-INF/page/show.jsp").forward(request,response);

    发现根本就没有把参数传递过去

    -----------------------------------------------

     后来发现我已经设置了视图解析器,可以直接返回路径,不需转发就可以到达目的地

    return "show";

     完美解决。

    转发与重定向就不用放在ssm框架上进行页面跳转了

  • 相关阅读:
    Codeforces 235C Cyclical Quest 后缀自动机
    HDU-6583 Typewriter 后缀自动机+dp
    HDU-4436 str2int 后缀自动机
    [题解]诸侯安置(dp+组合)
    [题解]洛谷P1350车的放置
    二进制表示中1的个数与异或关系
    [洛谷P1593][POJ-1845Sumdiv] 因子和
    [USACO08DEC]拍头Patting Heads 题解
    [小白逛公园]|[SP1716]|[UVA1400]解题报告(三合一)
    P2034选择数字题解
  • 原文地址:https://www.cnblogs.com/aashui/p/8881104.html
Copyright © 2011-2022 走看看