JSF:基于迭代索引的逻辑

JSF:基于迭代索引的逻辑,jsf,richfaces,facelets,icefaces,Jsf,Richfaces,Facelets,Icefaces,请原谅我的标题,这是我有限的大脑所能想到的最好的了 我有一个字符串列表,类似于[abc,def,ghi] 问题:在JSF中,如何迭代列表并创建一个类似“abc,def,ghi”(注意逗号)的字符串 对于那些想要告诉我最好使用Java方法连接字符串的人,请听下面的内容:列表的每个成员都应该作为单独的commandLink呈现 如果是纯JSF,它将如下所示: <h:commandLink>abc</h:commandLink>, <h:commandLink>de

请原谅我的标题,这是我有限的大脑所能想到的最好的了

我有一个字符串列表,类似于[abc,def,ghi]

问题:在JSF中,如何迭代列表并创建一个类似“abc,def,ghi”(注意逗号)的字符串

对于那些想要告诉我最好使用Java方法连接字符串的人,请听下面的内容:列表的每个成员都应该作为单独的commandLink呈现

如果是纯JSF,它将如下所示:

<h:commandLink>abc</h:commandLink>, <h:commandLink>def</h:commandLink>, <h:commandLink>ghi</h:commandLink>
abc、def、ghi
假设
{bean.items}
返回
List
String[]
,在JSF 1.x中,您可以使用JSTL
c:forEach
varStatus
。它为您提供了一个句柄,该句柄有一个
isLast()
方法

<c:forEach items="#{bean.items}" var="item" varStatus="loop">
    <h:commandLink value="#{item}" /><c:if test="#{!loop.last}">, </c:if>
</c:forEach>
假设
{bean.items}
返回
List
String[]
,在JSF1.x中,您可以将JSTL
c:forEach
varStatus
一起使用。它为您提供了一个句柄,该句柄有一个
isLast()
方法

<c:forEach items="#{bean.items}" var="item" varStatus="loop">
    <h:commandLink value="#{item}" /><c:if test="#{!loop.last}">, </c:if>
</c:forEach>

你的解决方案对我来说不是开箱即用的,但它引导我来到这个论坛帖子,里面有我的答案和更多。谢谢,它只适用于JSF2.x。您似乎正在使用JSF1.x。第一个解决方案更适合你。你的解决方案对我来说不是现成的,但它引导我找到了这个论坛帖子,里面有我的答案和更多。谢谢,它只适用于JSF2.x。您似乎正在使用JSF1.x。第一种解决方案更适用于您。