我想使用一个简单的@Schedule,所以我可以稍后使用它... 我的web应用程序只包含一个index.html 如果我去到./api/test/我会去我的由EJB管理的控制器。 在此控制器中,我使用@Schedule annation调用方法。但我只是不明白如何得到这个工作... runscript方法添加一个计数器字段,所以我的index.html文件显示数字:1.但我的号码从未走得更高,我什至不看任何sysouts ..所以我想我的@schedule不会被触发?@Schedule将无法工作EJB - Java EE - Web应用程序
这是我的两个只用代码文件:
@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;
}
}
}
类调度
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;
}
}
有人的想法,我怎么能得到这个工作? 我搜索了几个小时:ss
您通常不应该使用'@ Schedule'调用注解的方法。你想做什么,发生了什么? –
稍后我想每隔x秒阅读一次脚本,由@schedule安排... – Tom
但我现在正在测试使用@schedule。他甚至不会每5秒钟给我的系统管理员如果我运行该方法?如果我最好不要调用Schedule的注释方法,那么我该如何启动它们? – Tom