50.4. 端点选项
Quartz 端点使用 URI 语法进行配置:
quartz:groupName/triggerName
使用以下路径和查询参数:
50.4.1. 路径参数(2 参数)
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
groupName (consumer) | 要使用的 quartz 组名称。组名称和触发器名称的组合应该是唯一的。 | Camel | 字符串 |
triggerName (consumer) | 必需 要使用的 quartz 触发器名称。组名称和触发器名称的组合应该是唯一的。 | 字符串 |
50.4.2. 查询参数(17 参数)
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
cron (consumer) | 指定定义何时触发的 cron 表达式。 | 字符串 | |
deleteJob (consumer) | 如果设置为 true,则在路由停止时触发器自动删除。否则,如果设为 false,它将保留在调度程序中。当设置为 false 时,它还意味着用户可以在 camel Uri 中重复使用预配置的触发器。只需确保名称匹配。请注意,您无法将 deleteJob 和 pauseJob 设置为 true。 | true | 布尔值 |
durableJob (consumer) | 作业是否在孤立后保留(没有触发器指向它)。 | false | 布尔值 |
pauseJob (consumer) | 如果设置为 true,则在路由停止时自动暂停触发器。否则,如果设为 false,它将保留在调度程序中。当设置为 false 时,它还意味着用户可以在 camel Uri 中重复使用预配置的触发器。只需确保名称匹配。请注意,您无法将 deleteJob 和 pauseJob 设置为 true。 | false | 布尔值 |
recoverableJob (consumer) | 如果遇到 'recovery' 或 'fail-over',则指示调度程序是否应该重新执行作业。 | false | 布尔值 |
stateful (consumer) | 使用 Quartz PersistJobDataAfterExecution 和 DisallowConcurrentExecution 而不是默认作业。 | false | 布尔值 |
exceptionHandler (consumer (advanced)) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer (advanced)) | 在消费者创建交换时设置交换模式。 Enum 值:
| ExchangePattern | |
customCalendar (advanced) | 指定自定义日历以避免特定日期范围。 | 日历 | |
jobParameters (advanced) | 要在作业上配置附加选项。 | Map | |
prefixJobNameWithEndpointId (advanced) | 作业名称是否应该使用端点 ID 前缀。 | false | 布尔值 |
triggerParameters (advanced) | 在触发器上配置附加选项: | Map | |
usingFixedCamelContextName (advanced) | 如果为 true,JobDataMap 直接使用 CamelContext 名称来引用 CamelContext (如果为 false),JobDataMap 使用 CamelContext 管理名称,该名称可以在部署期间更改。 | false | 布尔值 |
autoStartScheduler (scheduler) | 调度程序是否应自动启动。 | true | 布尔值 |
startDelayedSeconds (scheduler) | 启动 quartz 调度程序前等待的秒数。 | int | |
triggerStartDelay (scheduler) | 如果调度程序已启动,我们希望触发器在当前时间后稍早启动,以确保在作业启动前完全启动端点。负值转换了过去的触发开始时间。 | 500 | long |
50.4.3. 配置 quartz.properties 文件
默认情况下,Qrtz 将在 classpath 的 org/quartz
目录中查找 quartz.properties
文件。如果您使用 WAR 部署,这意味着将 quartz.properties 放到 WEB-INF/classes/org/quartz
中。
但是,Camel Quartz 组件还允许您配置属性:
参数 | 默认值 | 类型 | 描述 |
---|---|---|---|
|
|
|
您可以配置 |
|
|
| 从 classpath 加载的属性的文件名 |
要做到这一点,您可以在 Spring XML 中配置它,如下所示
<bean id="quartz" class="org.apache.camel.component.quartz.QuartzComponent"> <property name="propertiesFile" value="com/mycompany/myquartz.properties"/> </bean>