Ex.:
<c:set var="obj">
<% objeto.retornaUmLong("1","2"); %>
</c:set>
Bom, eu estou fazendo mais ou menos isso, e o retorno do método retornaUmLong é do tipo Long. Só que se eu executar:
<c:out value="${obj}" />
Não imprime nda. Somente se o retorno for String q imprime algo.
Alguém sabe se eu posso realmente fazer desta forma q to tentando?
Olá Fábio,
se você fizer:
<% Object object = new Object(); %>
<c:set var="obj">
<%= object.hashCode() %>
</c:set>
<c:out value="${obj}" />
Ele mostra na tela um número inteiro que é o hashCode desse objeto criado.
E se você fizer:
<% Long number = 10L; %>
<c:set var="obj">
<%= number %>
</c:set>
<c:out value="${obj}" />
Mostrará 10 na tela.
Então eu acho que seu método retornaUmLong não está retornando os dados corretamente ou seu objeto não foi importado na JSP.
[color=“darkred”]Tópico movido para JSP / Servlets.[/color]
Oi Carneiro, o problema é que você usou o sinal de igual lah no seu scriplet.
E fazendo desta forma ele converte o valor pra Strring.
Suponhamos que eu tenha um list.
<% List lst = minhaLista%>
<c:set var="obj">
<%lst;%> // != <%=lst%>
</c:set>
No exemplo acima é exibido em String a Lista,(+o- assim: java.util.List@12212). Eu quero trabalhar com long e não com String.
Vlws msm assim.
Abraço.
Você não pode utilizar <% %> para mostrar resultados, por isso que é aí onde está o problema.
Mas por que você não pode utilizar <%= %> ?
Hm, isso que eu queria saber, então eu nao consigo fazer desta forma neh. :(… Bom, na verdade eu queria usar Date ao invés de Long, pq eu queria usar o <fmt:formatDate /> . E eu consigo usar o formateDate com objetos Date entendeu!? Mas eu já resolvi o meu problema aqui. Vlws.
Qualquer dúvida é só postar novamente.