#grails #cron
#grails #cron
Вопрос:
grailsApplication.config.myJob.cron.cronExpression = Configuration.findByConfigKey("schedule")?.configValue
MyJob.schedule(grailsApplication.config.archiveTablesJob.cron.cronExpression)
Ошибка начальной загрузки … исключение java.lang.RuntimeException.
Он не получает значение из конфигурации
Как получить значение cron из таблицы (базы данных) динамически?
Комментарии:
1. «grailsApplication.config.MyJob.cron.CronExpression» вы хотите передать эту переменную в «MyJob»?.
2. мой планировщик cron работает корректно в течение определенного времени. Но мое фактическое требование — это время (0 15 14? * MON-SUN) должен быть взят из database.so я написал в bootstrap приведенные выше коды, но я не могу импортировать свой класс Myjob . извините за это ArchiveTableJob
3. предоставьте более подробную информацию и полную трассировку стека ошибок.
4. дипак, моя реальная проблема заключается в том, что значения времени, которые мы даем, должны быть взяты из базы данных, а не как значение по умолчанию. если это непонятно, пожалуйста, ответьте
5. Это означает, что вы хотите получить доступ к вашему классу Myjob в bootsrap.groovy это единственная проблема, верно?
Ответ №1:
В вашем файле Bootstrap.groovy, настроенном следующим образом.
import com.Myjob //import your job package
class BootStrap {
def grailsApplication
def init = { servletContext ->
grailsApplication.config.myJob.cron.cronExpression = Configuration.findByConfigKey("schedule")?.configValue
MyJob.schedule(grailsApplication.config.myJob.cron.cronExpression)
}
}
Комментарии:
1. я считаю, что вы получаете выражение cron из базы данных.
2. на самом деле при импорте Myjob отображается ошибка (невозможно разрешить класс groovy)