Data com formato estanho Exercicio 7.7 Java Caelum Web

Estou fazendo o exercicio 7.7 da apostila Web Java. Ocorre tudo bem , mas ao verificar a data na na pagina ela fica com o formato estranho.

Exemplo:

java.util.GregorianCalendar[time=1477620000000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id=“America/Sao_Paulo”…

Segue codigo do arquivo lista-contatos.jsp

<% @ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

< body >

< !-- Criando a instancia do ContatoDao -->
< jsp:useBean id="dao" class="br.com.caelum.agenda.dao.ContatoDao"/>



< table>
< !-- Fazando o foreach percorrendo contatos e montando as linhas na tabela -- >
< c:forEach var="contato" items="${dao.lista }">
< tr>
	< td>${contato.nome}< /td>
	< td>${contato.email}< /td>
	< td>${contato.endereco}< /td>
	< td>${contato.dataNascimento}< /td>
	< /tr>
	< /c:forEach>
	< /table>
< /body> 

Como consigo mudar o formato na JSTL?

Coloquei espaços nas tags pra aparecerem aqui.

Veja este post

Boa noite Daniel,

Eu tentei fazer o mesmo esquema, atribuindo a uma String e formatando.
Porém, ao fazer isso o java ja me da um erro de compilação.

Deixei assim :

< td>${contato.nome}< /td>
< td>${contato.email}< /td>
< td>${contato.endereco}< /td>
<% String dataFormatada = new SimpleDateFormat(“dd/MM/yyyy”).format(contato.getDataNascimento().getTime()); %>
< td>${contato.dataNascimento}< /td>

Desculpe @Jeferson_Carlos, passei algo diferente.

Voltado ao inicio do seu codigo :

 < tr>
	< td>${contato.nome}< /td>
	< td>${contato.email}< /td>
	< td>${contato.endereco}< /td>
	< td>${contato.dataNascimento}< /td>
	< /tr>
	< /c:forEach>

no seu
< td>${contato.dataNascimento}< /td>

faltou o

<td>${contato.dataNascimento.time}</td>

colocando isso o resultado deve aparecer conforme a imagem da apostila :

com isso, mais a frente na apostila na seção 7.14 Formatação de datas irá mostrar um jeito melhor de formatar as datas com a tagliib :

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

então no seu codigo ficará assim :

<fmt:formatDate value="${contato.dataNascimento.time}"
pattern="dd/MM/yyyy" /> 

{ },s.

boa Daniel, deu certo.

Valeu meu parceiro, mais uma vez.

1 curtida