Singleton no início do Tomcat

2 respostas
H

Pessoal,

eu tenho uma aplicação rodando no Tomcat e preciso que quando o Tomcat seja iniciado ele sozinho exeute um metodo que eu indicar, tem como fazer isso. Eu preciso instanciar um singleton e quero fazer isso na hora que o sistema (Tomcat) for iniciado. Hoje eu faço isso carregando esse singleton no primeiro request que o sistema receber, mas não estou gostando disso. Alguém teria uma dica?

2 Respostas

fabiozoroastro

Configure seu web.xml para iniciar uma classe junto com o start do seu tomcat.

H

Eu resolvi da seguinte forma:

No web.xml

<!--Configura a classe de inicialização do sistema-->
	<listener>
 		<listener-class>systemstart.StartupListener</listener-class>
 	</listener>

E classe StartupListener ficou assim:

package systemstart;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class StartupListener implements ServletContextListener

{
	public void contextInitialized(ServletContextEvent event)
	{		
		//Linha de exemplo, qualquer código pode ser colocado aqui.
		event.getServletContext().setAttribute("teste", "valor teste");

	}

	public void contextDestroyed(ServletContextEvent event)
	{
		// TODO Auto-generated method stub
	}
}

Mesmo assim, valeu a dica!

Criado 3 de novembro de 2006
Ultima resposta 3 de nov. de 2006
Respostas 2
Participantes 2