<s:property value="list"/> // 能輸出對象 toString()
<s:property value="list.entity.name"/> // 無輸出
list 為 List<Entity>,后台有 getter/setter,對象也有 name 屬性及 getter。
<s:property value="list.entity.name"/> 嘗試將 list 視為單個對象訪問其 entity 屬性,但 list 是集合,無 entity 屬性。Struts2 OGNL 表達式不會自動遍歷集合。
<s:iterator value="list" var="item">
<s:property value="#item.name"/> // 或 #item.entity.name 視對象結構
</s:iterator>
或暴露給 JSP 表達式語言(EL):
<c:forEach items="${list}" var="item">
${item.name}
</c:forEach>
list[0].name:訪問第一個元素。list.{name}:投影,返回所有元素 name 組成的新列表。list.{? #this.name == 'target'}:選擇過濾。