Scheduler utilizando MDB  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
rflprp
GUJ Ranger

Membro desde: 27/04/2005 18:52:49
Mensagens: 822
Offline

Pessoal,

Estou utilizando o JBOSS 4 e estou implementando uma fundionalidade que funciona semelhante a um scheduler.
Até agora fiz o MDS implementar a interface TimedObject, implementei o método ejbTimeout... o agendador rola direitinho.

O problema é que se eu reiniciar o servidor, o agendamento é perdido...

Não dá pra utilizar a api de scheduler do JBoss pois eu só sei o tempo de espera em tempo de execução...

Alguma idéia ?
psevestre
JavaEvangelist

Membro desde: 13/05/2005 12:53:19
Mensagens: 432
Localização: São Paulo
Offline


A estratégia que já usei é a seguinte:

1. Ao agendar uma tarefa, salve a mesma em uma lista ordenada pela data de agendamento. esta lista deve ser persistente para "sobreviver" a uma reinicialização do servidor.
2. No evento de timer, consulte a lista e execute as tarefas "vencidas", ou seja, aquelas cuja data de execução <= data atual. Para cada tarefa executada, remova a mesma da lista ou use um flag indicando a data/hora de execução.

3. Reagende o disparo do timer

http://justaphilpicks.blogspot.com/
[MSN]
rflprp
GUJ Ranger

Membro desde: 27/04/2005 18:52:49
Mensagens: 822
Offline

Só pra constar:

Era um bug na versão do JBoss q eu tava usando, é só atualizar a versão q ele persiste na boa.

valeu.
Tecnoage
GUJ Master

Membro desde: 13/03/2005 23:18:07
Mensagens: 1723
Localização: SP
Offline

Isso que eu ia falar mesmo. é uma característica da arquitetura dos EJBs resgatar particularidades transacionais ativas anteriores à ultima "Quedinha" do sistema.... Tava com cara de bug mesmo.rs

Arquiteto de Software
Sysped Solutions
R3 SAP CAT-83, NF-e, ECD, EFD, CT-e, MANAD, IN86
www.sysped.com.br
[Email] [WWW] [MSN]
psevestre
JavaEvangelist

Membro desde: 13/05/2005 12:53:19
Mensagens: 432
Localização: São Paulo
Offline

Rafaelprp wrote:Só pra constar:

Era um bug na versão do JBoss q eu tava usando, é só atualizar a versão q ele persiste na boa.

valeu.


Ok, vc. se livra do caso "quedinha". E o que vc. faz no caso "quedona" (digamos 24hs) ? Meu ponto é: tome cuidado com premissas que funcionam quando tudo está "normal"...

http://justaphilpicks.blogspot.com/
[MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team