在
${userRecords}这里${userRecords.user_first_name}${userRecords.user_middle_name}是一个
List<User>,但是您试图将其当作单个访问
User。这是无效的。在EL中,
List只能使用整数索引来访问a,该索引指示您要访问的列表项的位置,如下所示
${userRecords[0].user_first_name}${userRecords[0].user_middle_name}该异常基本上也表明它期望使用整数值而不是字符串值。如果您仔细查看堆栈跟踪,您会发现其中
ListELResolver涉及到a 。
但是,您的具体问题更大。您实际上应该在列表上进行迭代。为此使用JSTL
<c:forEach>。例如(从您的奇数代码段简化):
<table> <c:forEach items="${userRecords}" var="user"> <tr> <td>${user.user_first_name}</td> <td>${user.user_middle_name}</td> </tr> </c:forEach></table>(注意:如果您确实打算将它们重新显示为输入值,请记住[XSS攻击漏洞)
顺便说一下,我将研究您的Java代码约定。这些下划线确实不是Java风格的。



