2017-02-10 1 views
0

Je dois créer un service de temporisation/planification dans jboss (JEE6). Le problème est, il est déployé en tant que module jboss. Je sais que le code suivant fonctionne si déployé comme EJBUtilisation des temporisateurs dans les modules jboss

@Schedule(hour="*/1", persistent=false) 

mais il ne fonctionne pas si déployé autrement. Existe-t-il des recommandations ou des méthodes standard pour créer et utiliser des minuteurs dans les modules jboss? Je veux éviter la manière de base de créer TimerTask.

Répondre

0

Les modules jboss sont créés pour partager le code entre les applications de manière efficace. Pour plus d'informations, référez-vous à here. Maintenant, parce que les modules ne sont pas déployés dans un conteneur EJB; il n'est pas possible d'utiliser le planificateur EJB ici. La solution possible pour cela dans notre cas était de créer un EJB qui dépend de ces modules jboss dont les méthodes seront invoquées par les planificateurs.

par exemple,

@Singleton 
@Startup 
public class NotificationRecorderBean { 


@Inject 
private MyJbossModule myJbossModule; 

@Schedule(hour="*/1", persistent=false) 
    public void execute() { 
     LOGGER.debug("Recording notification count"); 
     myJbossModule.process(); 
    } 

}