显示列表 JSP 页中的列表
Displaying list in a list JSP Page
我正在尝试显示一个列表,该列表的每个对象都有另一个我必须显示的列表,值即将出现但未显示,下面是我尝试过的代码,如果有人可以识别我的内容我做错了,这将非常有帮助。我正在使用 Spring MVC,但我认为它与此错误没有任何关系,我们将不胜感激。
@Entity
@Table(name="FILE_TRACKING_MANAGEMENT")
@NamedQuery(name="FileTrackingManagement.findAll", query="SELECT f FROM FileTrackingManagement f")
{
@OneToMany(mappedBy="fileTrackingManagement")
private List<FileNoting> fileNotings;
//bi-directional many-to-one association to FileTrackingFile
@OneToMany(mappedBy="fileTrackingManagement")
private List<FileTrackingFile> fileTrackingFiles;
}
我的控制器Class:
@RequestMapping("viewMarkedFiles/list")
public ModelAndView viewMarkedFiles(Model model)
{
List<FileTrackingManagement> markedFileList= fileService.getList();
//model.addAttribute("markedFileList", markedFileList);
return new ModelAndView("viewMarkedFiles", "markedFileList", markedFileList);
}
我的 JSP 页:
<table border="1" bgcolor="black" width="600px">
<c:forEach items="${markedFileList}" var="markedFileVal">
<%-- <c:set var="fileNotings" value="${jobs[i.index].jobId}"/> --%>
<tr
style="background-color: white; color: black; text-align: center;"
height="30px">
<td><c:out value="${markedFileVal.diarynumber}" />
<td><c:out value="${markedFileVal.subject}" />
<td>
</td>
<td>
</td>
<td>
<c:forEach items="${markedFileList.fileNotings}" var="filenotings">
<c:out value="${filenotings.notingData}" /></c:forEach>
</td>
</c:forEach>
</table>
它抛出这个异常:
45: <%-- <c:out value="${fileVal.description}" /> --%>
46: </td>
47: <td>
48: <c:forEach items="${markedFileList.fileNotings}" var="filenotings">
49: <c:out value="${filenotings.notingData}" /></c:forEach>
50:
51:
Stacktrace:] with root cause
java.lang.NumberFormatException: For input string: "fileNotings"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
提前致谢
<c:forEach items="${markedFileList}" var="markedFileVal">
因此,您正在遍历列表 markedFileList
。在标签体内,当前元素是 markedFileVal
.
然后你
<c:forEach items="${markedFileList.fileNotings}" var="filenotings">
所以你开始 markedFileList.fileNotings
。但是 markedFileList
是一个列表。它不是当前元素。你要的是
<c:forEach items="${markedFileVal.fileNotings}" var="filenoting">
另请注意,我从 filenotings
中删除了最后的 s
。此变量指向单个文件注释。不是几个。
@OneToMany(fetch = FetchType.EAGER, mappedBy="fileTrackingManagement")
私有列表文件注释;
fetchType的值默认是Lazy,当我改变它的值时,它起作用了
我正在尝试显示一个列表,该列表的每个对象都有另一个我必须显示的列表,值即将出现但未显示,下面是我尝试过的代码,如果有人可以识别我的内容我做错了,这将非常有帮助。我正在使用 Spring MVC,但我认为它与此错误没有任何关系,我们将不胜感激。
@Entity
@Table(name="FILE_TRACKING_MANAGEMENT")
@NamedQuery(name="FileTrackingManagement.findAll", query="SELECT f FROM FileTrackingManagement f")
{
@OneToMany(mappedBy="fileTrackingManagement")
private List<FileNoting> fileNotings;
//bi-directional many-to-one association to FileTrackingFile
@OneToMany(mappedBy="fileTrackingManagement")
private List<FileTrackingFile> fileTrackingFiles;
}
我的控制器Class:
@RequestMapping("viewMarkedFiles/list")
public ModelAndView viewMarkedFiles(Model model)
{
List<FileTrackingManagement> markedFileList= fileService.getList();
//model.addAttribute("markedFileList", markedFileList);
return new ModelAndView("viewMarkedFiles", "markedFileList", markedFileList);
}
我的 JSP 页:
<table border="1" bgcolor="black" width="600px">
<c:forEach items="${markedFileList}" var="markedFileVal">
<%-- <c:set var="fileNotings" value="${jobs[i.index].jobId}"/> --%>
<tr
style="background-color: white; color: black; text-align: center;"
height="30px">
<td><c:out value="${markedFileVal.diarynumber}" />
<td><c:out value="${markedFileVal.subject}" />
<td>
</td>
<td>
</td>
<td>
<c:forEach items="${markedFileList.fileNotings}" var="filenotings">
<c:out value="${filenotings.notingData}" /></c:forEach>
</td>
</c:forEach>
</table>
它抛出这个异常:
45: <%-- <c:out value="${fileVal.description}" /> --%>
46: </td>
47: <td>
48: <c:forEach items="${markedFileList.fileNotings}" var="filenotings">
49: <c:out value="${filenotings.notingData}" /></c:forEach>
50:
51:
Stacktrace:] with root cause
java.lang.NumberFormatException: For input string: "fileNotings"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
提前致谢
<c:forEach items="${markedFileList}" var="markedFileVal">
因此,您正在遍历列表 markedFileList
。在标签体内,当前元素是 markedFileVal
.
然后你
<c:forEach items="${markedFileList.fileNotings}" var="filenotings">
所以你开始 markedFileList.fileNotings
。但是 markedFileList
是一个列表。它不是当前元素。你要的是
<c:forEach items="${markedFileVal.fileNotings}" var="filenoting">
另请注意,我从 filenotings
中删除了最后的 s
。此变量指向单个文件注释。不是几个。
@OneToMany(fetch = FetchType.EAGER, mappedBy="fileTrackingManagement") 私有列表文件注释;
fetchType的值默认是Lazy,当我改变它的值时,它起作用了