Hora errada no tomcat

3 respostas
A

Pessoal,

:oops: :frowning: :?

O problema é o seguinte:
Quando eu executo a applet dentro do Eclipse a hora que aparece é: 11:19.
E quando eu chamo a pagina atraves do tomcat da minha maquina, usando o localhost, a hora é 8:19.

Ou seja 3 horas de diferença o que faço para que nao tenha estas 3 horas de diferença?

Minha aplicação usa: struts e o servidor é o tomcat.

Nas telas tenho uma applet que informa a data e hora:

Segue abaixo o codigo da appet a chamada da applet no jsp

package applet;

import java.awt.Graphics;
import java.util.*;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.applet.Applet;


//applet com a formatação corrigida 


public class Clock extends Applet implements Runnable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1907939386388635109L;
	private Thread clockThread = null;
	
	public void start() {
		if (clockThread == null) {
			clockThread = new Thread(this, "Clock");
			clockThread.start();
		}
	}
	
	public void run() {
		Thread myThread = Thread.currentThread();
		while(clockThread == myThread) {
			repaint ();
			try {
				Thread.sleep (1000);
			} catch (InterruptedException e) {}
		}
	}
	
	public void paint (Graphics g) {
		Date now = new Date();
	    Locale brLoc = new Locale ("pt", "BR");
	    DateFormat df = new SimpleDateFormat ("EEEEE, d 'de' MMMMM 'de' yyyy '     ' HH:mm:ss", brLoc);
		g.drawString(df.format (now),5,10);
	}
	
	public void stop() {
		clockThread = null;
	}
}
<table summary="clock"><tr><td>
	<applet codeBase="applet" code="applet.Clock"
	 name="Clock" width="280" height="10" archive="clock.jar"></applet></td></tr>
</table>

3 Respostas

D

Basta subir a VM do Tomcat com o seguinte parâmetro:
-Duser.timezone=<INSIRA_TIMEZONE_AQUI>

Por exemplo, aqui em São Paulo eu uso assim:
-Duser.timezone=America/Sao_Paulo

Se eu não me engano, li em um algum fórum por aí que tratava-se de um problema relacionado com horário de verão em algum outro país.

Enfim, em algum lugar tem uma lista com todos os timezones que você pode utilizar, é só procurar no Google por algo como: “America/Sao_Paulo” java timezone.

É workaround, mas resolve. =P

G

e em qual arquivo eu coloco esses parametros???

toh com o mesmo probelma do amigo acima

vlws

M

No arquivo catalina.sh

Criado 23 de janeiro de 2007
Ultima resposta 19 de nov. de 2009
Respostas 3
Participantes 4