日期:2014-05-19  浏览次数:20912 次

OGNL的小问题!!求大神!!!
情况是这样的
如下一行代码
List list=(List) getHibernateTemplate().execute(new HibernateCallback() {
int size=pageNow*pageSize-pageSize;
@Override
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
// TODO Auto-generated method stub
Query query=session.createQuery("select l.bookId,l.ISBN,b.bookName,b.publisher,b.price,l.ltime from Lend as l,Book as b where l.readerId=? and b.ISBN=l.ISBN");
query.setParameter(0,readerId);
query.setFirstResult(size);
query.setMaxResults(pageSize);
List l=query.list();
return l;
}
});

这时候list集合里面的元素是object对象,而object对象里面有bookId ISBN bookName publisher price ltime等元素。

重点来了

接下来我要在JSP页面用OGNL表达式表示这些元素 如下所示

<s:iterator value="#request.list" id="lend">
<tr>
<td>
<s:property value="#lend.readerId"/>
</td>
<td>
<s:property value="#lend.ISBN"/>
</td>
<td>
<s:property value="#lend.bookName"/>
</td>
<td>
<s:property value="#lend.publisher"/>
</td>
<td>
<s:property value="#lend.price"/>
</td>
<td>
<s:date name="#lend.ltime"/>
</td>
</tr>
</s:iterator>


但是像我这样写显示不出来 
求正确的写法 或者其他的替代方法
在线等!!!!!

------解决方案--------------------
return l;

<s:iterator value="#request.list" id="lend">
你返回的是l,引用list
你这是开玩笑吗?
------解决方案--------------------
<s:iterator value="#request.list" id="lend">
改成  <s:iterator value="#request.list" var="lend">
试试看。。