2

我有一堂课,我正在创建一个非空的ArrayList并且把它不是一个会话。现在,我想将会话中保存的列表迭代到我的 JSP 页面中。

我试过了,但什么都没有。

在行动课上

..................
books = new ArrayList<Bookdetails>();
session.put(BillTransactionBooksConstants.BOK, books);
return SUCCUSS;

注意:我测试我的列表不为空,并且它正确添加到会话中。我唯一的问题是如何从会话中将此列表显示到我的 JSP 中。

BillTransactionBooksConstants

package v.esoft.actions.booktransaction; 
public class BillTransactionBooksConstants 
{
    public static final String BOK = "BOK"; 
}

shortbill.jsp

<s:iterator value="#session.BillTransactionBooksConstants.BOK" status="userStatus">
    <s:property value="Bookdetails.bookTitile" />
    <br/>
</s:iterator>
4

2 回答 2

4

只引用属性名,直接使用常量值:

<s:iterator value="#session.BOK">
    <s:property value="bookTitle" />
    <br/>
</s:iterator>

请注意,我已更正了该属性的拼写。

另请注意,“SUCCESS”拼写为“SUCCESS”,而不是“SUCCUSS”。

如果您希望使用常量名称,您应该可以使用以下内容,但我没有测试它:

<s:iterator value="#session[@v.esoft.actions.booktransaction.BillTransactionBooksConstants@BOK]">

假设启用了静态成员访问。

于 2012-11-10T21:11:00.987 回答
0

尝试这个

<s:iterator value="#session.BOK" status="userStatus">
<tr class="<s:if test="%{#userStatus.odd == true} ">odd</s:if> <s:else>even</s:else>">
<td><s:property value="bookTitile" /></td>
于 2012-11-10T21:02:14.880 回答