2016-12-07 91 views
0

我使用vaadin和quartz調度程序開發了一個應用程序。我有這樣的代碼:石英調度程序實例爲空

final ServletContext servletContext = VaadinServlet.getCurrent().getServletContext(); 

StdSchedulerFactory stdSchedulerFactory = (StdSchedulerFactory) servletContext 
      .getAttribute(QuartzInitializerListener.QUARTZ_FACTORY_KEY); 
final Scheduler scheduler = stdSchedulerFactory.getScheduler(); 

所以我注意到服務器重新啓動後,有時我有一個java.lang.NullPointerException在這條線stdSchedulerFactory.getScheduler()

你能解釋我發生什麼事?

回答

0

問題出在你初始化調度程序的方式。
我認爲有人有類似的問題(不同的錯誤,但相同的用法)。

//Create & start the scheduler. 
     StdSchedulerFactory factory = new StdSchedulerFactory(); 
     factory.initialize(servletContext.getResourceAsStream("/WEB-INF/my_quartz.properties")); 
     scheduler = factory.getScheduler(); 

請看看here瞭解更多詳情。