Eso no existía para EJB hasta 3.1. Con EJB 3.1 se puede utilizar un grano de Singleton para simular que:
De Application Startup/Shutdown Callbacks:
@Startup
@Singleton
public class FooBean {
@PostConstruct
void atStartup() { ... }
@PreDestroy
void atShutdown() { ... }
}
De lo contrario, tendrá que confiar en el buen viejo truco de usar un ServletContextInitializer
.
Hay alguna extensión específica de la aplicación, p. lifecycle listener para Glassfish. Tal vez haya algo así para JBoss.
Pero si yo fuera usted, trataría de confiar en las características estándar tanto como sea posible. El problema con la extensión no estándar es que nunca se sabe exactamente qué se puede hacer o no, p. Ej. puede iniciar la transacción o no, etc.
Alternativamente, siempre se puede usar un MBean con los métodos de inicio/detención del ciclo de vida. El MBean se inyecta con el EJB necesario y llama a los métodos que sean necesarios. –
Gracias. Dos publicaciones excelentes. Terminé con un "ServletWrapper" en su lugar. Pero un refactor está en la agenda. ¡Salud! – Elijah
Estoy usando jboss 5.1 (no estoy seguro si es compatible con EJB3.1) ¿Puedo utilizar esta técnica para invocar el método en implementación? Gracias. – rayman