Estou com o seguinte problema e gostaria de ajuda:
Tenho uma tela em que alguns dados são gravados.
Estou utilizando o servidor Glassfish + Hibernate.
Como padrão, o horário de gravação que está sendo gerado é a meia noite.
O problema que ocorre é o seguinte:
Quando efetuo a gravação de dados em um dia em que começa o horário de verão, o horário de gravação gerado não é mais a meia noite, e sim às 23hs do dia anterior,
gerando erro de 1 hora, e erro de 1 dia na data de gravação, pois como volta uma hora, fica com a data do dia anterior.
Este problema não ocorre no servidor TomCat, mas sim, somente no glassfish.
Pesquisei bastante na internet mas não encontrei uma forma de resolver este problema.
Gostaria de saber se alguém já passou por um problema como este ou alguma solução que eu poderia estar utilizando.
Já tentei também que fazer com que o horário padrão gerado pelo java seja meia dia, ou seja, às 12hs, mas nã consegui, pois o horário padrão gerado pelo java é as 00:00hs.
Já aconteceu comigo a um tempo atrás. Vc terá de configurar o timezone do glassfish...dá uma pesquisada no google, pq não me lembro como foi. Pode ser que haja soluções mais atuais.
Na verdade meu problema está com datas em que iniciam o horário de verão.
O horário padrão deveria ser as 00:00hs (meia noite), mas como é um dia que inicia o horário de verão é descontada uma hora, ficando com data do dia anterior, ou seja, as 23hs do dia anterior.
Desculpe reviver esse tópico, mas fiquei 4 dias tentando resolver o problema e hoje consegui e com a intenção de ajudar outros desevolvedores, segue o passo a passo,
digite no seu glassfish
c:\glassfish3\bin> asadmin list-jvm-options
veja se na lista aparece
-Duser.timezone=UTC
se aparecer troque o UTC pelo seu país
caso não apareça vá até o arquivo domain.xml e procure por jvm-options e acrescente a linha de comando
-Duser.timezone=Brazil/East substituindo o Brazil/East pelo timezone do país