我如何在jsp中加入实现toString的对象?

时间:2012-09-14 10:55:02

标签: jsp jstl seam

我正在迭代表中的实体列表。此实体具有一个对象列表,这些对象覆盖toString方法以提供其实例的“name”属性。我们称他们为B个对象。

在该表中,我希望有一个列,其中通过调用toString方法确定的对象B的所有值都用逗号连接。就像在这个片段中一样:

<rich:column visible="false" label="function">
  <f:facet name="header">Function</f:facet>
  <h:outputText value="#{fn:join(a.b, ', ')}" />
</rich:column>

其中b是类B的对象列表。唯一的问题是jsp1.2不会呈现这个:

javax.servlet.ServletException: Cannot convert [] of type class org.hibernate.collection.PersistentBag to class [Ljava.lang.String;

所以问题是:有没有一种很好的处理方法,缺少<c:forEach>来循环输出列表值?

我担心这是一个使用jsp1.2和seam2.2的遗留项目,我不允许升级它。

1 个答案:

答案 0 :(得分:0)

您可以创建一个返回列表String的getter:

public String getMyListAsString(){
  return org.apache.commons.lang.StringUtils.join(myList, ", ");
}

您可以在EL中使用getter:

#{myBean.myListAsString}