On Wed, 19 Jan 2005 18:25:55 -0800, Kishore Senji <[EMAIL PROTECTED]> wrote: > On Wed, 19 Jan 2005 18:49:52 -0600, [EMAIL PROTECTED] > <[EMAIL PROTECTED]> wrote: > > I need to know an additional question: > > You sent me: > > > > <c:forEach items="${sessionScope.auditorList}" var="auditor" > > varStatus="status"> > > > > I need to know if this would be correct as well, where > > creditApplicationListDto.businessLine is a Boolean: > > > > <c:forEach items="${creditApplicationListDto.businessLine}" var="true" > > varStatus="status"> > > Nope. "items" should evaluate to a collection. > In JSTL it would be something like the below code to solve your > problem (I haven't tested it, Just wrote it on top of my head) > > <c:if test="${creditApplicationListDto.businessLine}"> > <bean:message key="label.bln"/> > <c:set var="found" value="true"/> > </c:if> > <c:if test="${creditApplicationListDto.businessCard}"> > <c:choose> > <c:when test="${found}"> > , <bean:message key="label.bcard"/> > </c:when> > <c:otherwise> > <bean:message key="label.bcard"/> > <c:set var="found" value="true"/> > </c:otherwise> > </c:choose> > </c:if> > <c:if test="${creditApplicationListDto.securedCard}"> > <c:choose> > <c:when test="${found}"> > , <bean:message key="label.seccard"/> > </c:when> > <c:otherwise> > <bean:message key="label.seccard"/> > <c:set var="found" value="true"/> > </c:otherwise> > </c:choose> > </c:if> > <c:if test="${creditApplicationListDto.equipmentExpress}"> > <c:choose> > <c:when test="${found}"> > , <bean:message key="label.equipExpress"/> > </c:when> > <c:otherwise> > <bean:message key="label.equipExpress"/> > <c:set var="found" value="true"/> > </c:otherwise> > </c:choose> > </c:if> > > Look how large the chunk of code is.
You can also do it like this <% Map map = new HashMap(); if(creditApplicationListDto.getBusinessLine()){ // assuming that you make the "creditApplicationListDto" available as a scripting variable map.put("label.bln", creditApplicationListDto.getBusinessLine()); } if(creditApplicationListDto.getBusinessCard()){ map.put("label.bcard", creditApplicationListDto.getBusinessCard()); } if(creditApplicationListDto.getSecuredCard()){ map.put("label.seccard", creditApplicationListDto.getSecuredCard()); } if(creditApplicationListDto.getEquipExpress()){ map.put("label.equipExpress", creditApplicationListDto.getEquipExpress()); } pageContext.setAttribute("map", map); %> <c:forEach items="${map.keySet}" var="key" varStatus="status"> <c:choose> <c:when test="${not status.last}"><bean:write message="${map[${key}]}"/>, </c:when> <c:otherwise><bean:write message="${map[${key}]}"/></c:otherwise> </c:choose> </c:forEach> All we did here is to create a collection which holds only the "true" values. Note that you can do this in the DTO if you want to and expose the collection through a getter > Better way of doing it is by > having some sort of an utility method or using a tag as "Jim" > suggested > > > > > -------------------- > > Mick Knutson > > Wells Fargo Business Direct > > (415) 222-1020 > > > > "This message may contain confidential and/or privileged information. If > > you are not the addressee or authorized to receive this for the addressee, > > you must not use, copy, disclose, or take any action based on this message > > or any information herein. If you have received this message in error, > > please advise the sender immediately by reply e-mail and delete this > > message. Thank you for your cooperation." > > -------------------- > > > > -----Original Message----- > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > > Sent: Friday, January 14, 2005 11:18 AM > > To: Struts Users Mailing List > > Subject: Re: Help with logic tags, and commas please. > > > > Not exactly the same, since I have use of a list but here's how I handled > > it in JSTL... > > > > <c:forEach items="${sessionScope.auditorList}" var="auditor" > > varStatus="status"> > > > > <c:if test="${!status.last}"> > > <c:out value="${auditor.name}"/>,  > > </c:if> > > > > <c:if test="${status.last}"> > > <c:out value="${auditor.name}"/> > > </c:if> > > > > </c:forEach> > > > > Bart > > > > <[EMAIL PROTECTED]> wrote on 01/14/2005 02:04:07 PM: > > > > > I have the following code that prints something like this: > > > BLN, BCard, SecCard, EquipExp > > > > > > There may be any combination of any of these 4 items, or non at all. > > > And what I want is the ability to properly add commas after each > > > item, or not print a comma if there is not an item: > > > > > > <logic:equal name="creditApplicationListDto" property="businessLine" > > > value="true"> > > > <bean:message key="label.bln"/> , > > > </logic:equal> > > > <logic:equal name="creditApplicationListDto" property="businessCard" > > > value="true"> > > > <bean:message key="label.bcard"/> , > > > </logic:equal> > > > <logic:equal name="creditApplicationListDto" property="securedCard" > > > value="true"> > > > <bean:message key="label.seccard"/> , > > > </logic:equal> > > > <logic:equal name="creditApplicationListDto" > > > property="equipmentExpress" value="true"> > > > <bean:message key="label.equipExpress"/> > > > </logic:equal> > > > > > > > > > -------------------- > > > Mick Knutson > > > Wells Fargo Business Direct Information Systems > > > (415) 222-1020 > > > > > > "This message may contain confidential and/or privileged > > > information. If you are not the addressee or authorized to receive > > > this for the addressee, you must not use, copy, disclose, or take > > > any action based on this message or any information herein. If you > > > have received this message in error, please advise the sender > > > immediately by reply e-mail and delete this message. Thank you for > > > your cooperation." > > > -------------------- > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]