Pedrosa 10 de dez. de 2007
ddduran 10 de dez. de 2007
a mesma classe que você usou no seu desktop você pode executar, por exemplo, no init de uma servlet sua…
é com thread da mesma maneira.
Seria algo como um while(true) e um Thread sleep de 3 segundos
febeckers 10 de dez. de 2007
tu pode me dar um exemplo mostrando a mesma mensagem… bem simples?
ddduran 10 de dez. de 2007
No init da sua servlet, ou no main de uma classes que você queira chamar no bash do seu servidor/aplicação, ou onde quer que seja
Thread t = new Thread(new MinhaRunnable());
t.start();
ai o metodo da sua classe Runnable
public void run () {
while ( true ) {
// fa ço algo
try {
Thread .sleep ( 3000 ) ;
} catch ( InterruptedException e ) {
e .printStackTrace () ;
}
}
}
febeckers 10 de dez. de 2007
Cara, desculpa a insistencia… mas to determinado a conseguir isso pra web…
crio essas duas classes compilo e coloco em uma pastinha chamada classes dentro de web-inf…
depois no meu index apenas chamo a ben run.class por exemplo?
isso?
thingol 10 de dez. de 2007
Veja como você pode configurar o Quartz no seu web container.
edpipole 10 de dez. de 2007
febeckers 11 de dez. de 2007
olha só pessoal o que eu consegui fazer:
minha thread:
import java.awt.Graphics ;
import java.util.Date ;
public class Clock extends java . applet . Applet implements Runnable {
Thread clockThread ;
public void start () {
if ( clockThread == null ) {
clockThread = new Thread ( this , "Clock" );
clockThread . start ();
}
}
public void run () {
while ( clockThread != null ) {
repaint ();
try {
clockThread . sleep ( 1000 );
} catch ( InterruptedException e ){
}
}
}
public void paint ( Graphics g ) {
Date now = new Date ();
g . drawString ( now . getHours () + ":" + now . getMinutes () + ":" + now . getSeconds (), 5 , 10 );
}
public void stop () {
clockThread . stop ();
clockThread = null ;
}
}
meu index.html
<% @ page import = "clock.*" %>
<html>
<head>
<title> Threads</title>
</head>
<body>
testando thread<BR><BR><BR><BR>
<table width= "68" border= "1" align= "center" >
<tr>
<td width= "60" > <applet code= "Clock.class" height= "10" width= "60" >
</applet></td>
</tr>
</table>
</body>
</html>
Aqui está rodando basta compilar o codigo da therad e salvar como Clocklembrando que Clock e nome da minha classe que esta dentro de WEB-INF/classes/clock
thingol 11 de dez. de 2007
Não entendi como uma applet (algo que roda no browser, e que deve ser copiada para fora do diretório WEB-INF/classes senão não pode ser acessada pelo browser) vai resolver o problema do servidor, e ainda mais copiada para WEB-INF/classes.
Não entendi mesmo.
febeckers 11 de dez. de 2007
thingol!
Eu quis dizer que o meu problema se resolveu assim , pois eu precisava de tempos em tempos buscar algo no banco ( por exemplo ) e imprimir na tela sem ter que recarrega - la totalmente , tbm não posso usar ajax e nem java script ...
com um aplett eu consegui, tbm não tenho certeza de que este seria o melhor modo para ser feito…
estou aberto a sugestões, se alguém tiver um modo mais facil ou viavel via programalçao e não libs prontas nem frameworks…
OBS.: tbm não gostei da solução pois quem não tem o JRE instalada na maquina terá de instalar a mesma para rodar o aplett.