간단한 @Schedule을 사용하려고하므로 나중에 사용할 수 있습니다. 내 웹 응용 프로그램에는 index.html 만 포함되어 있습니다. ./api/test/ EJB가 관리하는 컨트롤러로 이동합니다. 이 컨트롤러에서 @Schedule 주석이있는 메서드를 호출합니다. 하지만이 방법을 이해하는 방법을 모르겠다. runningscript 메서드는 카운터 필드를 하나씩 추가하여 index.html 파일에 숫자 1을 표시합니다. 그러나 숫자는 결코 높지는 않습니다. 모든 sysouts .. 그래서 나는 내 @ 일정이 시작되지 않았을까?@Schedule이 작동하지 않습니다. EJB - Java EE - 웹 응용 프로그램
이 내 두에만 사용 코드 파일은 다음과 같습니다 일정
public class NewClass {
private int counter = 0;
private String text = "test";
public NewClass() {
}
public String getText(){
return text;
}
private void setText(String text){
this.text = text;
}
@Schedule(hour="*", minute="*", second="*/5")
public void runningScript() {
counter++;
System.out.println("*******test runningscript*****");
System.out.println(counter);
text = "number : " + counter;
}
}
누군가와
@Path("/test")
public class controller {
NewClass test;
public controller() {
test = new NewClass();
}
@GET
public Response getObservation() {
try {
//Object to JSON in String
test.runningScript();
System.out.println("getObservation");
System.out.println(test.getText());
String jsonInString = test.getText();
return Response.status(200).entity(jsonInString).build();
} catch (Exception ex) {
System.out.println("error");
ex.printStackTrace();
return null;
}
}
}
클래스 나는이 작업을 얻을 수있는 방법을 아이디어? 나는 수 시간 동안 검색했다 : ss
일반적으로'@ Schedule' 주석이 붙은 메소드를 호출하면 안됩니다. 당신은 무엇을하려하고 있으며, 대신에 무슨 일이 일어나고 있습니까? –
나중에 @schedule으로 예약 된 매 x 초마다 스크립트를 읽고 싶습니다. – Tom
그러나 @schedule의 사용을 테스트하고 있습니다. 그는 매 5 초마다 내 sysouts를 주지도 않는다. 만약 내가 그 방법을 실행한다면? Schedule로 선언 된 메서드를 호출하지 않는 것이 가장 좋은 방법이라면 어떻게 시작해야합니까? – Tom