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框架上进行页面跳转了

  • 相关阅读:
    poj3468(A Simple Problem with Integers)线段树+树状数组
    关于JVM——JVM内存模型
    关于JVM——类加载机制
    关于JVM(二)
    关于JVM(一)
    关于LongAdder
    关于Future
    关于Fork/Join
    关于Atomic
    关于LockSupport
  • 原文地址:https://www.cnblogs.com/aashui/p/8881104.html
Copyright © 2011-2022 走看看