我一直在尝试在我的Spring Boot应用程序中将Quartz Scheduler配置与Mongodb连接。 有趣的是,如果我将我的应用程序与本地mongodb实例连接,而在我们的开发环境中不起作用,则它的工作效果很好。 (我们确认没有防火墙或环境问题。)
我尝试使用quartz.properties和customMongoDbstore类加载mongo详细信息,该类扩展了Quartz的MongoDBJobStore类。
public class CustomMongoQuartzSchedulerJobStore extends MongoDBJobStore {
private static Logger log = LoggerFactory.getLogger(CustomMongoQuartzSchedulerJobStore.class);
public CustomMongoQuartzSchedulerJobStore() {
super();
initializeMongo();
log.info("CustomMongoQuartzSchedulerJobStore connection has started now...");
setMongoUri("mongodb://" + "qmongodb.boudev-dev.srcp:27017");
setUsername("USERNAME");
setPassword("PASSWORD");
setDbName("MONGODBNAME");
setMongoOptionEnableSSL(isSSLEnabled);
setMongoOptionSslInvalidHostNameAllowed(isSSLInvalidHostnameAllowed);
}
}
当我在本地尝试时,通过在Mongo中生成quartz_jobs,quartz_triggers和其他一些集合,我的计划作业运行良好。我期望在开发环境中也是如此。 我会看到类似下面的错误,
”由以下原因引起:org.springframework.beans.factory.BeanCreationException:在类路径资源[com / quartz / mongo / intro / quartzintro / config / QuartzConfiguration.class]中创建名称为“ schedulerFactoryBean”的bean时出错:初始化方法的调用失败;嵌套的异常是org.quartz.SchedulerException:JobStore类'“ mongodb:// [USERNAME]:[PASSWORD] @ qmongodb.boudev-dev.srcp:27017”'无法实例化。嵌套异常:java.lang.ClassNotFoundException:“ mongodb:// [USERNAME]:[PASSWORD] @ qmongodb.boudev-dev.srcp:27017”]“
请遇到这个问题并知道解决方案的人在这里为我提供帮助。几天以来,我一直被封锁,并在网上搜索了各种示例,但对我而言却没有运气。