Я читаю документацию по Quartz и пытаюсь понять, можно ли передать метод экземпляра Job вместо класса.
Например, в случае с классом мне нужно написать:
public class MyJobClass implements Job {
public MyJobClass() {
// Instances of Job must have a public no-argument constructor.
}
public void execute(JobExecutionContext context)
throws JobExecutionException {
JobDataMap data = context.getMergedJobDataMap();
System.out.println("someProp = " + data.getString("someProp"));
}
}
И определение экземпляра задания, например:
JobDetail job1 = newJob(MyJobClass.class) // what about method here
.withIdentity("job1", "group1")
.usingJobData("someProp", "someValue")
.build();
По тому же принципу я попытался определить метод передачи экземпляра задания, например:
// define the job
JobDetail job = newJob(testMethod())
.withIdentity("job1", "group1")
.build();
И метод выглядиткак:
private Class<? extends Job> testMethod() {
//...
return null;
}
Но я получаю ошибку:
java.lang.IllegalArgumentException: Job class cannot be null.
Обновлено: Я возвращаю null
в методе, потому что, если я этого не сделаюЯ получаю: