Pessoal tudo beleza? gostariam que avaliassem a solução e se possível me indiquem uma solucao mais elegante.
é o seguinte para formatar uma data na view (jsp) posso usar
<fmt:formatDate value="${objeto.data}" pattern="dd/MM/yyyy"/>
onde o atributo data é um objeto da classe java.util.Date.
Mas e no caso onde preciso formatar uma classe que nao tenha uma tag “formatadora”.
É bem feio colocar no meu modelo um método que formata, pois creio que nao é responsabilidade do modelo formatar dados para a view.
Um exemplo real é a classe Period da lib Joda-time.
Tenho uma classe que usa o Period e também um método getPeriodFormatado() para usar pegar a representacao do obj formatado na expression language. ex:
public class DiaDeTrabalho {
private Period periodo;
// getter e setter normal
// metodo para me retornar a string com a repressentacao do obj formatado
public String getPeriodoFormatado() {
return new PeriodFormatterBuilder()
.minimumPrintedDigits(2)
.appendHours()
.appendSeparator(":")
.appendMinutes()
.appendSeparator(":")
.appendSeconds()
.toFormatter()
.print(du.toPeriod()));
}
}
na jsp:
${diaDeTrabalho.getPeriodoFormatado}
entao qual a melhor forma ? criar uma tag propria ? tendo em vista que nao quero poluir meu modelo com classes formatadoras.
abraçoss