嘿伙计们我有一个回来的bean,bean中的一个属性是另一个bean的数组。
我可以很好地获取其他属性并在循环时显示在jsp上,但我需要将数组的内容输出。我知道我做错了,忘记了类似的东西的语法。
我最后一栏需要role.id
。这就是我得到的:
JSP:
<table class="data_table">
<c:choose>
<c:when test='${empty attachList}'>
<tr>
<td>No Attachments</td>
</tr>
</c:when>
<c:otherwise>
<tr>
<th>Remove Attachment</th>
<th>File Name</th>
<th>File Type</th>
<th>File Size (bytes)</th>
<th>File Attached By</th>
<th>Date/Time File Attached</th>
<th>Roles</th>
</tr>
<c:forEach var="item" items="${attachList}" varStatus="loopCount">
<tr>
<td class="button">
<rbac:check operation="<%=Operation.DELETE%>">
<button type="button" onclick="javascript:delete_prompt(${item.id});">Delete</button>
</rbac:check>
</td>
<td><a href="show.view_hotpart_attachment?id=${item.id}">${item.fileName}</a></td>
<td>${item.fileType}</td>
<td><fmt:formatNumber value="${item.fileSize}" /></td>
<td>${item.auditable.createdBy.lastName}, ${item.auditable.createdBy.firstName}</td>
<td><fmt:formatDate value="${item.auditable.createdDate}" pattern="${date_time_pattern}" /></td>
<td>${item.roles}</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
</table>
豆:
Bean类我在items="${attachList}"
private long id;
private String fileName;
private String fileType;
private int fileSize;
private Role[] roles;
private AuditableBean auditable;
/**
* Constructor.
*/
public AttachmentShortBean()
{
}
public long getId() { return id; }
public String getFileName() { return fileName; }
public String getFileType() { return fileType; }
public int getFileSize() { return fileSize; }
public Role[] getRoles() { return roles; }
public AuditableBean getAuditable() { return auditable; }
角色是另一个bean,它的getter是getName()
和getId()
我需要在最后一列中透露id的数组,但我只是得到一个内存位置......
答案 0 :(得分:5)
您还需要遍历您的角色
<c:forEach items = "${item.roles}" var = "role">
<c:out value = "${role.id}"/>
</c:forEach>
另一种可能性是
<c:out value = "${item.roles[0].id}"/>
如果您只是在寻找第一个角色。