2016-04-27 75 views
0

我正在嘗試使用JavaEE 7和本地GlassFish 4.1的計時器服務。JavaEE計時器服務

我寫了這個簡單的類(我看到它在一些示例):

@Stateless 
public class Tasker { 

    @Schedule(second = "*", minute = "*", hour = "*") 
    public void executeTask() { 
     System.out.println("Task"); 
    } 
} 

但是當我部署項目,我得到這個錯誤:

java.lang.RuntimeException: EJB Timer Service is not available 
... 
java.lang.NoClassDefFoundError: Could not initialize class org.apache.derby.jdbc.EmbeddedDriver 

我不知道爲什麼這發生。 我在JavaEE中非常新,我沒有找到任何有用的東西。

我該如何讓它工作?

+0

相關http://stackoverflow.com/questions/22786424/glassfish-scheduletitimer-exception – SpringLearner

+0

@SpringLearner我試過了,但沒有奏效。 (也許我做錯了,因爲我對這個環境非常陌生) – nrofis

+0

當我點擊'__TimerPool'中的'Ping'時,出現錯誤'java.lang.NoClassDefFoundError:無法初始化類org.apache.derby.jdbc.EmbeddedDriver無法初始化類org.apache.derby.jdbc.EmbeddedDriver' – nrofis

回答

1

重新安裝GlashFish服務器並將persistent = false添加到@Schedule解決了該問題。