2017-02-10 2 views
0

jboss (JEE6)에서 타이머/예약 서비스를 만들어야합니다. 문제는 jboss 모듈로 배포된다는 것입니다. 다음 코드가 EJB로 배포 된 경우 작동합니다.jboss 모듈의 타이머 사용

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

다른 방법으로 배포하면 작동하지 않습니다. jboss 모듈에서 타이머를 생성하고 사용하기위한 권장 사항이나 표준 방법이 있습니까? 나는 TimerTask를 생성하는 핵심 자바 방법을 피하고자한다.

답변

0

jboss 모듈은 효율적으로 응용 프로그램간에 코드를 공유하기 위해 만들어집니다. 자세한 내용은 here을 참조하십시오. 이제 모듈은 EJB 컨테이너에 배포되지 않기 때문에; 여기서 EJB 스케줄러를 사용할 수 없습니다. 우리의 경우에 가능한 해결책이나 방법은 스케줄러에 의해 메소드가 호출 될 jboss 모듈에 의존하는 EJB를 생성하는 것이 었습니다. 예

,

@Singleton 
@Startup 
public class NotificationRecorderBean { 


@Inject 
private MyJbossModule myJbossModule; 

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

}