NullPointerException beim Bereitstellen von Quartz in Spring Boot

Ich versuche, Quartz 2.2.1 mit Spring Boot zu verwenden. Ich versuche, eine geplante Aufgabe zu deklarieren, die einige Daten in eine Datei schreiben soll. Mein Job ist wie folgt definiert:

public class JobTask implements Job {

@Autowired
JobController controller;

@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {

                try {
                    controller.doPrintData();
                } catch (Exception e) {
                    e.printStackTrace();
                }
    }
}

Und dann

public class StartJob {

  public static void main(final String[] args) {
    final SchedulerFactory factory = new StdSchedulerFactory();
    Scheduler scheduler;
    try {
        scheduler = factory.getScheduler();
        scheduler.start();
    } catch (SchedulerException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }


    try {
      scheduler = factory.getScheduler();

      final JobDetailImpl jobDetail = new JobDetailImpl();
      jobDetail.setName("My job");
      jobDetail.setJobClass(JobTask.class);

      final SimpleTriggerImpl simpleTrigger = new SimpleTriggerImpl();
      simpleTrigger.setStartTime(new Date(System.currentTimeMillis() + 5000));
      //simpleTrigger.setStartTime(dateOf(12, 58, 00,06,05,2016));
      simpleTrigger.setRepeatCount(SimpleTrigger.REPEAT_INDEFINITELY);
      simpleTrigger.setRepeatInterval(5000);
      simpleTrigger.setName("Trigger execution every 5 secondes");

      scheduler.start();
      scheduler.scheduleJob(jobDetail, simpleTrigger);

      System.in.read();
      if (scheduler != null) {
        scheduler.shutdown();
      }
    } catch (final SchedulerException e) {
      e.printStackTrace();
    } catch (final IOException e) {
      e.printStackTrace();
    }
  }
}

PS: Ich habe meine Controllermethode 'doPrintData' getestet und es funktioniert. Aber wenn ich es in die Methode execute stecke, sehe ich das javaNullPointerException.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage