[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 

Forum Read-Only! Check the new site and forum here!

[1.10.1] - Média - Problemas com a tag inputDate [RESOLVIDO]  XML
Forum Index -> Bugs
Author Message
Jalerson



Joined: 19/02/2007 21:10:43
Messages: 65
Offline

Galera acredito que a tag inputDate esteja com algum problema. Tenho os seguintes campos no form da minha página:

Code:
 ...
 <mtw:inputDate name="dataHabilitacao" id="dataHabilitacao" size="10"
             textAlign="left" dateFormat="dd/mm/yyyy" klassStyle="border:1px solid"
             title="Informe a data de habilitação" titleButton="Clique aqui para abrir o calendário" />
 ...
 <mtw:inputDate name="dataDesabilitacao" id="dataDesabilitacao" size="10"
             textAlign="left" dateFormat="dd/mm/yyyy" klassStyle="border:1px solid"
             title="Informe a data de desabilitação" titleButton="Clique aqui para abrir o calendário" />
 ...
 


Esse form aponta para minha action que tem o seguinte código:

Code:
 ...
 System.out.println("dataDesabilitacao.getStringValue = "+input.getStringValue("dataDesabilitacao"));
 System.out.println("dataDesabilitacao.getDate = "+input.getDate("dataDesabilitacao"));
 System.out.println("dataHabilitacao.getStringValue = "+input.getStringValue("dataHabilitacao"));
 System.out.println("dataHabilitacao.getDate = "+input.getDate("dataHabilitacao"));
 ...
 


O problema é que, quando preencho os inputDate com as datas 08/07/2007 (data de habilitação) e 20/07/2007 (data de desabilitação), no console é impresso o seguinte:

Code:
 dataDesabilitacao.getStringValue = 20/07/2007
 dataDesabilitacao.getDate = Thu Aug 07 00:00:00 GMT-03:00 2008
 dataHabilitacao.getStringValue = 08/07/2007
 dataHabilitacao.getDate = Tue Aug 07 00:00:00 GMT-03:00 2007
 


Percebam que, quando uso o método getStringValue(), o resultado é exatamente a data que foi preenchida no campo, porém quando uso getDate(), aparece uma data meia louca. Na dúvida eu retirei todas as regras de validações sobre esses campos, o resultado foi o mesmo. Estou usando a versão 1.10.1 do mentawai e tomcat 6.0.10.

Obrigado!
[MSN]
Lobo


[Avatar]

Joined: 23/01/2006 02:17:14
Messages: 840
Location: Fortaleza-CE
Offline

Olá Jalerson,

Não entendi o seu problema o que foi retornado não é um objeto do tipo Date ?

Code:
 Tue Aug 07 00:00:00 GMT-03:00 2007
 



O método input.getDate já faz o trabalho pra você ele foi criado justamente
para transformar em um objeto java.util.Date.

Atenciosamente,
Hélio Frota

Helio Frota
10+ Java Programmer
heliofrota.com

Member
Mentawai Developer
Jalerson



Joined: 19/02/2007 21:10:43
Messages: 65
Offline

Fala Lobo,

eu sei disso, mas a data que o getDate() está pegando está errada, não é a data que eu selecionei no inputDate.

Eu digitei 08/07/2007 em dataHabilitacao, e o getDate me retornou: Tue Aug 07 00:00:00 GMT-03:00 2007

Eu digitei 20/07/2007 em dataDesabilitacao, e o getDate me retornou: Thu Aug 07 00:00:00 GMT-03:00 2008

Tem alguma coisa errada aí, acho que eu to ficando esclerozado... =P

vlww!!
[MSN]
Lobo


[Avatar]

Joined: 23/01/2006 02:17:14
Messages: 840
Location: Fortaleza-CE
Offline

Fala Jalerson,

Foi mal, eu li o seu post rápido demais realmente tem algum lance errado ai.

Vou criar 1 projeto que tem apenas 1 jsp e 1 action e ver o que ele manda pra Action ao chamar o getDate() pra isolar o problema e ver o que acontece ok.

Atenciosamente,
Hélio Frota

Helio Frota
10+ Java Programmer
heliofrota.com

Member
Mentawai Developer
Jalerson



Joined: 19/02/2007 21:10:43
Messages: 65
Offline

Ok Lobo, obrigado cara. Eu cheguei a isolar o cógigo numa action e uma jsp separada, deu o mesmo erro. Mas pode ser que eu esteja fazendo algo errado...

Valeu!
[MSN]
Jalerson



Joined: 19/02/2007 21:10:43
Messages: 65
Offline

Galera acredito que temos um problema aí viu? Isolei tudo num projeto só, e continua me retornando a data errada.

teste.jsp
Code:
 <html>
 	<head>
 	<mtw:inputDateConfig />
 	</head>
 	<body>
 		<form action="DateTest.mtw" name="form">
 		<mtw:inputDate name="data" id="data" size="10"
             textAlign="left" dateFormat="dd/mm/yyyy" klassStyle="border:1px solid"
             title="Informe a data de habilitação" titleButton="Clique aqui para abrir o calendário" />
             <INPUT name="button" type="submit" value="Enviar" />
         </form>
 	</body>
 </html>
 


DateTest.class
Code:
 public class DateTest extends BaseAction {
 	public String execute() throws Exception {
 		System.out.println(input.getDate("data"));
 		return SUCCESS;
 	}
 }
 


ApplicationManager.class
Code:
 public class ApplicationManager extends org.mentawai.core.ApplicationManager {
 	public void loadActions() {
 		ActionConfig ac = new ActionConfig("DateTest", DateTest.class);
 		ac.addConsequence(SUCCESS, new Forward("/teste.jsp"));
 		addActionConfig(ac);
 	}
 }
 


A data impressa no console foi: Mon Jan 07 00:00:00 GMT-03:00 2008

Valeu!!!
[MSN]
robertwgil


[Avatar]
Joined: 23/02/2007 17:22:13
Messages: 745
Location: São Paulo - SP - Brasil
Offline

Heim, nao se esqueça que a data é no padrao ingles!
entao:

dataHabilitacao.getStringValue = 08/07/2007
dataHabilitacao.getDate = Tue Aug 07 00:00:00 GMT-03:00 2007

Esta certinho, agora esta:

dataDesabilitacao.getStringValue = 20/07/2007
dataDesabilitacao.getDate = Thu Aug 07 00:00:00 GMT-03:00 2008

vem o ano errado porque nao existe mes 20, ae da essa doideira ai.

AT+

Robert Gil
Coordenador de Desenvolvimento / Administrador de Redes.

Twitter
[Email] [MSN]
Jalerson



Joined: 19/02/2007 21:10:43
Messages: 65
Offline

Falou tudo Robert! =) Muito obrigado!

Pra quem estiver com a mesma dúvida, a solução é usar o método getDate("data", "dd/MM/yyyy");

Valeu!
[MSN]
edyvr



Joined: 09/12/2009 15:47:11
Messages: 10
Offline

Como faço para mostrar uma data vinda do banco de dados em uma inputDate?

Estou usando este código:

<mtw:inputDate name="txtDtNasc" maxlength="10" dateFormat="dd/mm/yyyy" value="${cliente.dtnasc}"></mtw:inputDate>

mas a data vem no seguinte formato:

Tue Jun 24 00:00:00 BRT 1969

O que está fazendo eu ter problemas com a inputDate.

Valeu, pessoal!
robertwgil


[Avatar]
Joined: 23/02/2007 17:22:13
Messages: 745
Location: São Paulo - SP - Brasil
Offline

hora que abrir a pagina, manda pro output a sua data que a tag vai entender. não precisa usar o value.

output.setValue('txtDtNasc', yourDateObj );

Robert Gil
Coordenador de Desenvolvimento / Administrador de Redes.

Twitter
[Email] [MSN]
 
Forum Index -> Bugs
Go to:   
Powered by JForum 2.1.6 © JForum Team