Long para Inteiro Nao da?

Meu metodo getCapacidade retorna um valor Long

120.034123776

Minha duvida é como eu na JSP recebo esse valor e altero para int?
(obs:sendo correto ou nao, nao interessa, qro saber mesmo como faz jah JSP)

a resposta deveria ser apenas a parte inteira:
120

Meu código que retorna o long… e eu qro a parte inteira:

[code]


<c:forEach var=“drive” items="${componentes.drives}">
              <tr>
                <td width="25%"><strong><bean:message key="invhw.fabricante"/></strong></td>
                <td width="75%"><div align="left"><c:out value="${drive.fabricante}"/></div></td>
              </tr>
              <tr>
                <td width="25%"><strong><bean:message key="invhw.modelo"/></strong></td>
                <td width="75%"><div align="left"><c:out value="${drive.modelo}"/></div></td>
              </tr>
              <tr>
                <td width="25%"><strong><bean:message key="invhw.nserie"/></strong></td>
                <td width="75%"><div align="left"><c:out value="${drive.serial}"/></div></td>
              </tr>
              <tr>
                <td width="25%"><strong><bean:message key="invhw.tipo"/></strong></td>
                <td width="75%"><div align="left"><c:choose> <c:when test="${drive.tipo == 'F'}"><bean:message key="invhw.fixo"/></c:when> <c:when test="${drive.tipo == 'C'}"><bean:message key="invhw.cdrom"/></c:when> <c:when test="${drive.tipo == 'R'}"><bean:message key="invhw.ramdisk"/></c:when> <c:when test="${drive.tipo == 'T'}"><bean:message key="invhw.remote"/></c:when> <c:when test="${drive.tipo == 'B'}"><bean:message key="invhw.removivel"/></c:when> <c:otherwise><bean:message key="invhw.desconhecido"/></c:otherwise> </c:choose></div></td>
              </tr>
              <tr>
                <td width="25%"><strong><bean:message key="invhw.revisao"/></strong></td>
                <td width="75%"><div align="left"><c:out value="${drive.revisao}"/></div></td>
              </tr>
              <tr>
                <td width="25%"><strong><bean:message key="invhw.capacidade"/></strong></td>
                <td width="75%"><div align="left"><c:out value="${(drive.capacidade)/1000000000}"/><bean:message key="invhw.gb"/></div></td>
              </tr>
              <tr><td>&nbsp;</td><td>&nbsp;</td></tr>

          </c:forEach>
            </table>[/code]
  1. ja sei que nao funciona a taglib fmt, com o metodo integerOnly, pq ele transforma tudo em inteiro “120034123776”.

  2. ja tentei usar o java mas as variaveis se comportam como escopos diferentes e nao passam o valor de uma para a outra(descrito abaixo):

<%long capacidade = 0L; %> <c:set var="capacidade" value="${drive.capacidade}"/> <c:out value="${drive.capacidade}"/> <%=capacidade %>

plzzz Gujeiros! soh preciso uma taglib ou a resposta fiquei a manha toda soh nessa porcaria… rssss

Isso não é um valor Long. Isso é um Float ou um Double.

Mas se vc quiser tirar os decimais, dê uma olhada na classe DecimalFormat, lá tem um método chamado setMaximumFractionDigits().

veja se isso te ajuda

<fmt:formatNumber value="${valor }"  maxFractionDigits="0" minFractionDigits="0"/>

Ou vc aplica um parser de Double para inteiro!

Olá furutani,

Ficou perfeito!!!

Vlw ae pessoal :stuck_out_tongue: