If com JSTL

Oi pessoal, estou tentando fazer um IF dentro do JSP usando JSTL…

<html:select name="funcaInserirBusiness" property="cod_afast">
<logic:iterate name="codafListaBusiness" id="obj">
<html:option value="${obj.cod}">${obj.cod} - ${obj.descricao}</html:option>
</logic:iterate>
</html:select>

mas eu tô querendo ver o tamanho de ${obj.descricao}, se for maior que 30 imprime ${obj.descricao}.substring(0, 30)+" …" senão imprime ${obj.descricao}

Como eu uso o <c:if test=""/> ?

Vc vai precisar ter um metodo, na sua classe que retorna o tamanho da string.
aew vc faz…
Tipo assim:

public class MinhaClasee&#123;
private String descricao;
private int tamanhoDesc;

// Pojos&#40;get e set&#41; para o atrivuto descricao e para o tamanhoDesc.

No Jsp:

...
&lt;c&#58;if test=&quot;$&#123;obj.tamanhoDesc &gt;30&quot;&gt;
// maior ki 30
&lt;/c&#58;if&gt; 

&lt;c&#58;if test=&quot;$&#123;obj.tamanhoDesc &lt; 30&quot;&gt;
// menor ki 30
&lt;/c&#58;if&gt; 

Mas soh lembrando que não é bom vc validar isso no jsp.
Na sua classe, vc podia fazer de um método pra retornar esse atributo, jah validado e formatado.
[=

Abraços.

Eu fiz de outro jeito cara… sem usar um método na classe, ó só: :cool:

&lt;td align=&quot;left&quot;&gt;&lt;html&#58;select name=&quot;funcaInserirBusiness&quot; property=&quot;catfgts&quot;&gt;
&lt;logic&#58;iterate name=&quot;fgcatListaBusiness&quot; id=&quot;obj&quot;&gt;
&lt;html&#58;option value=&quot;$&#123;obj.codigo&#125;&quot;&gt;$&#123;obj.codigo&#125; - &lt;c&#58;if test=&quot;$&#123;fn&#58;length&#40;obj.descricao&#41;&gt;40&#125;&quot;&gt;$&#123;fn&#58;substring&#40;obj.descricao,0,40&#41;&#125; ...&lt;/c&#58;if&gt;
&lt;c&#58;if test=&quot;$&#123;fn&#58;length&#40;obj.descricao&#41;&lt;=40&#125;&quot;&gt;$&#123;obj.descricao&#125;&lt;/c&#58;if&gt;
&lt;/html&#58;option&gt;
&lt;/logic&#58;iterate&gt;
&lt;/html&#58;select&gt;&lt;/td&gt;