如何使用java和glassfish实现每日计划任务?

如何使用java和glassfish实现每日计划任务?,java,glassfish,Java,Glassfish,我试图用java实现一个每日计划任务,与glassfish一起工作,每天实现数据库的记录,是为了一个集合应用程序,因此余额和利息必须每天更新。我正在使用: 玻璃鱼4 JavaEE7Web JSF2.2 Hibernate 4.3.1 我已经看到了Maven的例子,所以我还不清楚,如果有人实施并能帮我一把,我将非常感激您的问题不是很清楚。然而,在字里行间阅读可以大致得出以下使用注释的示例: //change the statuses, from 'Executing...' to 'Uncom

我试图用java实现一个每日计划任务,与glassfish一起工作,每天实现数据库的记录,是为了一个集合应用程序,因此余额和利息必须每天更新。我正在使用:

  • 玻璃鱼4
  • JavaEE7Web
  • JSF2.2
  • Hibernate 4.3.1

我已经看到了Maven的例子,所以我还不清楚,如果有人实施并能帮我一把,我将非常感激

您的问题不是很清楚。然而,在字里行间阅读可以大致得出以下使用注释的示例:

//change the statuses, from 'Executing...' to 'Uncomplete' every at 5pm 
@Schedule(hour = "17", persistent = false)
public void runEndOfDay() throws Exception {

    System.out.println("Tickets updated on - " + new Date());

    /*Set tickets to status 'Uncomplete' if Lodged without being completed until the end of business*/
    query = em.createQuery("update Ticket t set t.status = 'Uncompleted' where t.status = 'Executing...' or t.status = 'Paused...' or t.status = 'Missing...' or t.status = 'Lodged'");

    query.executeUpdate();
}

该方法在@Stateless会话bean(或EJB)对象中定义,每天17:00执行。该应用程序已作为.war文件部署在GlassFish 4.0中,并已使用JSF 2.2框架创建

最后我成功了,显然GlassFish有问题,我将他带走,然后继续添加。 但最后的代码是

@Singleton
@Startup

public class BackgroundJobManager {

@Schedule(hour="0", minute="0", second="0", persistent=false)
public void someDailyJob() {
    // Do your job here which should run every start of day.
    System.out.println("");
}

@Schedule(hour="*/1", minute="0", second="0", persistent=false)
public void someHourlyJob() {
    // Do your job here which should run every hour of day.
}

@Schedule(hour="*", minute="*/15", second="0", persistent=false)
public void someQuarterlyJob() {
    // Do your job here which should run every 15 minute of hour.
    System.out.println("Imprimir cada 15 mins");
}

@Schedule(hour="*", minute="*/1", second="0", persistent=false)
public void someMinuteJob() {
    // Do your job here which should run every minute of the hour.
    System.out.println("Imprimir cada 1 mins");
}

这段代码来自@BalusC

的帖子,感谢stateles作为bean提供的快速响应和评论,这种类型必须是bean、会话、视图和请求?您必须向web.xml添加更多内容??我尝试过,但出现以下错误:
Severe:加载应用程序时异常严重:上下文/WebApplication3取消部署失败警告:EJB计时器服务不可用。id为96104569243631616的应用程序的计时器不会被删除严重:加载应用程序时出现异常:EJB计时器服务不可用
请确保:导入javax.EJB.Schedule;导入javax.ejb.Stateless;