我有一个关于在JSF中将对象列表输出为逗号分隔列表的问题。

比方说:

public class SomeObj {
  private String name;
  ... constructors, getters and setters ...
}


和List :

List<SomeObj> lst = new ArrayList<SomeObj>();
lst.add(new SomeObj("NameA"));
lst.add(new SomeObj("NameB"));
lst.add(new SomeObj("NameC"));


将其输出为列表框,我可以使用以下代码:

<h:selectManyListbox id="id1"
                  value="#{listHolder.selectedList}">
  <s:selectItems value="#{listHolder.lst}"
                   var="someObj"
                 label="#{someObj.name}"/>
  <s:convertEntity />
</h:selectManyListbox>


但是,以逗号分隔的按原样输出列表的最简单方法是什么?像这样:

NameA, NameB, NameC


我应该使用JSTL 还是标记也可以使用?

最佳答案

使用<ui:repeat>(来自facelets)。类似于c:forEach

或在托管bean中预先计算以逗号分隔的字符串,然后通过getter获得它。

10-04 18:33