JSTL + set

3 respostas
J

Dae galera… nao consegui fazer essa operação… deve ser fácil… mas sinceramente não consegui…
Eu tenho o seguinte código:

c:forEach var="pais" items="${tramitacao.documento.documentos}"> <c:if test="${pais.numDocumento != '' && pais.numDocumento != null}"> <c:set var="paisAux" value="(${pais.numDocumento})"></c:set> <c:set var="paisConcatenados" value="${paisAux}${paisAux}"></c:set> </c:if> </c:forEach>
Eu preciso concatenar esse pais.numDocumento que fique dessa forma
(doc1)(doc2)(doc3), dessa forma ai, óbviamente esta dando erro e esta ficando sempre (doc1)(doc1)… porque será?? hauahuh
Mas como estou mechendo a pouco tempo com JSTL,não consegui fazer essa concatenação que em String ficaria:

valorConcatenado += valor;

Alguém sabe como fazer isso?
Abraço!

3 Respostas

lgi2020

Amigo.

Não sei se entendi bem o que você quer e NÃO SEI SE O CÓDIGO QUE FIZ TÁ FUNCIONANDO.
Infelizmente, no momento, não estou podendo testar… :frowning:

De qualquer forma, experimenta isso:

<c:set var="paisConcatenados" value="" />
<c:forEach var="pais" items="${tramitacao.documento.documentos}">
	<c:if test="${not empty pais.numDocumento}">
		<%!-- Código aqui! --%>
	</c:if>
</c:forEach>

Tente subistituir o comentário com uma destas opções:

<c:set var="paisConcatenados" value="${paisConcatenados} + ${pais.numDocumento}" />
<c:set var="paisConcatenados" value="${paisConcatenados + pais.numDocumento}" />
<c:set var="paisConcatenados" value="${paisConcatenados}${pais.numDocumento}" />

Espero que funcione… mas, se não funcionar, por favor, não me odeie! :slight_smile:

Abraços e boa sorte.

J

Cara… não funcionou… mas quase… alterei dessa forma e funcionou… valeu!!

<c:set var="paisConcatenados" value="" /> <c:forEach var="pais" items="${tramitacao.documento.documentos}"> <c:if test="${not empty pais.numDocumento}"> <c:set var="paisConcatenados" value="${paisConcatenados}(${pais.numDocumento})" /> </c:if> </c:forEach>

lgi2020

Beleza.

Parabéns!

Abraços.

Criado 23 de outubro de 2007
Ultima resposta 23 de out. de 2007
Respostas 3
Participantes 2