java - 为什么我无法访问这个放入 Model 对象的列表到这个 Spring MVC 项目中?

标签 java spring jsp spring-mvc jakarta-ee

我是 Spring MVC 的新手,我有以下疑问:

在 Controller 中,我有这种方法可以处理指向 /consultazioneMinisteriale URL 的 HTTP 请求

    @RequestMapping(value = "/consultazioneMinisteriale", method = RequestMethod.GET)
    public String consultazione(Locale locale, Model model) {

    List<Twb1012Regione> listaRegioni = geograficaService.getListaRegioni();

    return "utenteMinisteriale/consultazione";
}

正如您在方法中看到的那样,我检索了调用服务的 Twb1012Regione 对象列表,我正确地检索了该对象(使用调试器我看到它已正确初始化)

现在我希望这个列表在返回的 View 中可用,所以我以这种方式更改了以前的方法:

    @RequestMapping(value = "/consultazioneMinisteriale", method = RequestMethod.GET)
    public String consultazione(Locale locale, Model model) {

    List<Twb1012Regione> listaRegioni = geograficaService.getListaRegioni();
    model.addAttribute(listaRegioni);
    return "utenteMinisteriale/consultazione";
}

所以我只是将检索到的列表添加到 Model 对象中。

现在我正尝试通过我的 consultazione.jsp View 访问此对象,方法如下:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ page session="false"%>
<%@  taglib prefix="security" uri="http://www.springframework.org/security/tags" %>

<!DOCTYPE html>
<html>
    <head>
        <title>Home</title>
    </head>

    <body class="azure">
        <h1>Hello World</h1>

        <div> ${listaRegioni} </div>

        <c:forEach items="${listaRegioni}" var="item">
            TEST<br>
        </c:forEach>
    </body>
</html>

问题是它不起作用,我看不到这个 listaRegioni 对象的任何引用到我的 View 中(它只打印 Hello World 消息) .

为什么?我错过了什么?我该如何尝试解决这个问题?

最佳答案

您正在向没有名称的模型添加属性。

model.addAttribute(listaRegioni);

因此推断出一个名称,为此它查看集合中的类型并添加 List 后缀。因此属性的名称是 twb1012RegioneList 而不是 listaRegioni(正如您当前在 JSP 中所拥有的)。这在 naming conventions 中有描述。 .

最好在将参数添加到模型时明确命名参数。

model.addAttribute("listaRegioni", listaRegioni);

关于java - 为什么我无法访问这个放入 Model 对象的列表到这个 Spring MVC 项目中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32604039/

相关文章:

java - 在许多 CPU 上扩展处理时的奇怪行为

java - java中输入1000000000个数组

java - ImageButton 和首选项

java - 在没有 web.xml 文件的 Tomcat Web 应用程序中设置 Spring 配置文件

java - 在不循环所有记录的情况下从数据库检索特定数据的最有效方法是什么?

javascript - 如何禁用我的网站记住密码?

java - jstat和JSP配置

java - jsp页面中的ChoiceBox迭代

java - 简单的测验不会等待答案

java - Magnolia CMS 与 Spring MVC maven 项目发布