简体   繁体   English

无法遍历Jsp中的列表

[英]Can't iterate over list in Jsp

I am using hibernate to get the subjects associated with a particular user. 我正在使用休眠来获取与特定用户关联的主题。 In mainPage, I want to see firstName and LastName (this works) of the user and allowed subjects. 在mainPage中,我想查看用户和允许的主题的firstName和LastName(这有效)。 But, for some reason, I am not able to successfully iterate over the list of subjects put in mainPage. 但是,由于某种原因,我无法成功遍历mainPage中放置的主题列表。

In my Spring controller I have a method, which looks like this: 在我的Spring控制器中,我有一个方法,如下所示:

@RequestMapping(value = "/signin", method = RequestMethod.POST)
    public String SignIn(@ModelAttribute("user") User user, ModelMap modelMap){

        String username = user.getUsername();
        String password = user.getPassword();

        User user1 = userService.getUser(username, password);
        if(user1 != null){

            List<Subject> subjectList = userService.getUserSubjects(user1.getId());

            modelMap.addAttribute("subjects", subjectList);
            modelMap.addAttribute("user", user1);
            return "mainPage";
        }

        modelMap.addAttribute("ShowNotAuthenticated", true);
        return "authentication";
    }

mainPage.jsp looks like this: mainPage.jsp看起来像这样:

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <title>Title</title>
    </head>
    <body>
        <h2>Current user: ${user.firstName} ${user.lastName}</h2> //this works
        <br>
        <h3>Allowed subjects:</h3>
    <table>
        <tr>
            <td>
                Subject Name
            </td>
        </tr>
        <c:forEach items="${subjects}" var="x"> //doesn't work
            <tr>
                <td>
                    ${x.name}
                </td>
            </tr>
        </c:forEach>
    </table>
    </body>
</html>

This is SignIn method during debug: 这是调试期间的SignIn方法:

在此处输入图片说明

These are pictures in mainPage.jsp : 这些是mainPage.jsp中的图片:

在此处输入图片说明

在此处输入图片说明

Mykhailo Moskura 's suggestion doesn't work too: Mykhailo Moskura的建议也不起作用:

在此处输入图片说明

From debugger screenshot I see that your subjectList has elements of type Object[] . 从调试器屏幕截图中,我看到您的subjectList具有类型Object[]元素。 So you either need to change what you store in that list or try to use ${x[1]} instead of ${x.name} . 因此,您需要更改存储在该列表中的内容,或者尝试使用${x[1]}而不是${x.name}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM