Formatação de data - Struts

3 respostas
skekeu

Galera, estou fazendo uns teste aqui com struts e hibernate e pintou seguinte duvida:

tenho um campo no bd q é do tipo date.
pra gravar a data no banco de dados estou usando o seguinte conversor

public class Conversor implements Converter {

    public Object convert(Class arg0, Object arg1) {

        SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");

         Date date = null;

         try {

             date = format.parse((String)arg1);

         } catch (ParseException e) {
             e.printStackTrace();
         }
         return date;
     }

    }

depois registro ele no construtor do meu formbean

public class PessoaForm extends org.apache.struts.action.ActionForm implements java.io.Serializable {


    private static final long serialVersionUID = 1L;

    public PessoaForm(){
    ConvertUtils.register(new Conversor(), Date.class);
    }
    
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column()
    private Integer id;
    @Column()
    private String nome;
    @Temporal(TemporalType.DATE)
    @Column()
    private Date nasc;

Até ai blz ... só q ao gravar no mysql ele grava a data no formato yyyy/MM/dd
Como posso fazer pra resgatar essa data no formato dd/MM/yyyy???

Obrigado...

3 Respostas

skekeu

opa ... consegui usando jstl :D

<c:forEach var="item" items="${lista}">

             <tr>
                <td>${item.id}</td>
                <td>${item.nome}</td>
                <td><fmt:formatDate pattern="dd/MM/yyyy" value="${item.nasc}"/></td>
            </tr>
   
            </c:forEach>

Tem como fazer isso usando tag do struts????

Obrigado

dondiego

tem…

mas, seu action tem que ter um getText (ou ela extender a classe ActionSupport da XWork) e tem que ter um arquivo de propriedades que informe qual é o formato de ‘format.date.big’ - no meu caso.

Exemplo:

format.date.big = {0,date,dd/MM/yyyy HH:mm:ss} format.date.small = {0,date,dd/MM/yyyy} format.money = {0,number,R$ #.################

esse arquivo de propriedades segue o padrão para qualquer outro válido para o Struts: ou ser o padrão de mensagens e tal, como abaixo:

(messages_i18n.properties é meu arquivo com todas as mensagens e formatações)

ou, ser um arquivo *.properties normal.

dá uma olhada no link:

http://struts.apache.org/2.1.8.1/docs/formatting-dates-and-numbers.html

por isso eu gosto de struts, em detrimento do jsf. para as coisas funcionarem do jeito que você quer, você tem que forçar o esquema e entender todos os passos. cê entende o que está acontecendo no struts, no jsf cê faz porque é automático.

(esse comentário não tem nada a ver com o seu tópico, mas gosto sempre de falar isso :slight_smile:

skekeu

valew cara … muito obrigado pela ajuda.

Criado 11 de dezembro de 2009
Ultima resposta 14 de dez. de 2009
Respostas 3
Participantes 2