用于Javamail的Camel Route不会在关闭时停止

时间:2014-12-31 18:53:42

标签: apache-camel javamail quartz-scheduler

我有一条简单的路线

 from(
            "myQuartz://EMAIL_Route?cron=0+0/5+*+*+*+?")
            .routeId("EMAIL_Route")
            .shutdownRunningTask(
                    ShutdownRunningTask.CompleteCurrentTaskOnly)
            .beanRef("errorReportProcessor")
            .filter((body().isNotNull()))
            .to("smtp://smtpHost?From=someone&to=someoneElse&Subject=something").end();

即使我在Websphere应用服务器中关闭应用程序,我仍然会继续收到电子邮件。调度程序/线程没有停止。在我的quartz属性文件中,我也尝试了

org.quartz.scheduler.makeSchedulerThreadDaemon=true
但是,没有结果。 Camel,Quartz和Mail组件版本是2.12.4。 Spring 3.2.5。发布。 Websphere 8。

SystemOut.log文件清楚地提到,应用程序停止没有错误。但是,我可以看到在task-manager中运行的java.exe实例。

1 个答案:

答案 0 :(得分:0)

行。我发现问题是缺少“root-app-context”。有一次,我配置了“root-app-context”,Cron-scheduler现在停止了,没有更多的搁浅线程。 :)

即使是makeSchedulerThreadDaemon的额外配置也不是必需的。

org.quartz.scheduler.makeSchedulerThreadDaemon=true