Spring MVC无法让JSP显示Controller Value

时间:2015-08-30 18:59:47

标签: java spring spring-mvc

我是Spring MVC的新手我已经设置了一个测试数据库来尝试获取单个流,并在JSP页面中显示一个表。我假设我配置错误但我找不到它。也许是一个命名约定。

我有一个mySql数据库 一个DAO类,它只是从我的表中执行select *,因为我可以进入它。

我的控制器只获取了我的运行模型列表。没有抛出错误JSP简单地加载一个空表。控制器似乎有正确的信息。

模型(片段所有的getter和setter似乎都可以正常工作,因为控制器可以很好地获取它们的列表)

public class QAModel {

private int idRun;
private String SuiteID;
private String run_name;

控制器代码

    @RequestMapping(value="/RunList")
public ModelAndView listRun(ModelAndView model) throws IOException{
    //@ModelAttribute
    System.out.println("**** Controller ******");

    List<QAModel> listRun = runDao.list();
    model.addObject("RunList", listRun);
    model.setViewName("RunList");

    return model;
}

这确实得到了一个包含正确数据库信息的运行模型对象列表,如果我进入它,我可以看到它们。但是,JSP会加载一个空白表。

JSP代码(我假设我缺少一些映射或命名约定?)

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Contact Manager Home</title>
    </head>
    <body>
        <div align="center">
            <h1>Contact List</h1>
            <h3><a href="/newRun">New Run</a></h3>
            <table border="1">
                <th>No</th>
                <th>Suite ID</th>
                <th>Run Name</th>


                <c:forEach var="QAModel" items="${RunList}" varStatus="status">
                    <tr>
                        <td>${status.index + 1}</td>
                        <td>${QAModel.SuiteID}</td>
                        <td>${QAModel.run_name}</td>

                    <td>
                        <a href="/editRun?id=${run.id}">Edit</a>
                        &nbsp;&nbsp;&nbsp;&nbsp;
                        <a href="/deleteRun?id=${run.id}">Delete</a>
                    </td>

                    </tr>
                </c:forEach>

            </table>
        </div>
    </body>
</html>

1 个答案:

答案 0 :(得分:0)

如果您无法打印任何jstl变量,那么一个可能的原因可能是您的jstl核心标记未添加。

将其添加到JSP文件的开头。

<?xml version="1.0"?>
<DATA>
    <SystemID>
        <Information>
        </Information>
    </SystemID>
    <Measurement_Data>
        <Channel_01>
            <Parameter_1 Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_2 Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_3 Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_N Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
        </Channel_01>
        <Channel_02>
            <Parameter_A Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_B Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_C Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_N Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
        </Channel_02>
        <Channel_Z>
            <Parameter_2A Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_3A Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_1A Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
            <Parameter_3N Attribute1="123" Attribute2="string" Attribute3="456" Attribute4="string" />
        </Channel_Z>
    </Measurement_Data>
</DATA>