在没有任何数据库的Java EE中进行调度

时间:2017-08-18 11:15:33

标签: java java-ee glassfish

我正在尝试在不使用任何数据库的情况下在Java EE应用程序中安排任务,包括像derby这样的任何内存数据库。我之所以这样做,是因为我必须在没有数据库的集群上部署我的应用程序。

要重现我遇到的问题,这是一个最小的java示例:

package testPackage;

import javax.ejb.Schedule;
import javax.ejb.Singleton;
import javax.ejb.Startup;

@Startup
@Singleton
public class Scheduler {

    @Schedule(second="*", persistent=false)
    public void hello() {
        System.out.println("Hello");
    }
}

在本地禁用jdbc/__TimerPool时,我会遇到与尝试在群集上部署时相同的错误: enter image description here

这导致异常:javax.naming.NamingException: Lookup failed for 'jdbc/__TimerPool' in SerialContext。但是,如果删除@Schedule注释,异常就会消失,这意味着应用程序本身不需要TimerPool。

是否可以在Java EE中使用没有任何数据库的非持久性调度?

0 个答案:

没有答案