2016-04-27 4 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

related http://stackoverflow.com/questions/22786424/glassfish-scheduletimer-exception – SpringLearner

+0

@SpringLearner Я попробовал, но это не сработало. (Возможно, я сделал что-то неправильно, потому что я очень новичок в этой среде) – nrofis

+0

Когда я нажимаю «Ping» в '__TimerPool', я получаю ошибку' java.lang.NoClassDefFoundError: не удалось инициализировать класс org.apache.derby.jdbc.EmbeddedDriver Не удалось инициализировать класс org.apache.derby.jdbc.EmbeddedDriver' – nrofis

ответ

1

Переустановка сервера GlashFish и добавление persistent = false в @Schedule решила проблему.