68.4. Spring Boot Auto-Configuration
在 Spring Boot 中使用 exchangeProperty 时,请确保使用以下 Maven 依赖项来支持自动配置:
组件支持 147 选项,它们如下所列。
| Name | 描述 | 默认 | 类型 |
|---|---|---|---|
| camel.cloud.consul.service-discovery.acl-token | 设置与 Consul 搭配使用的 ACL 令牌。 | 字符串 | |
| camel.cloud.consul.service-discovery.block-seconds | 等待监视事件的秒数,默认为 10 秒。 | 10 | 整数 |
| camel.cloud.consul.service-discovery.configurations | 定义其他配置定义。 | map | |
| camel.cloud.consul.service-discovery.connect-timeout-millis | OkHttpClient 连接超时。 | Long | |
| camel.cloud.consul.service-discovery.datacenter | 数据中心。 | 字符串 | |
| camel.cloud.consul.service-discovery.enabled | 启用组件。 | true | 布尔值 |
| camel.cloud.consul.service-discovery.password | 设置用于基本身份验证的密码。 | 字符串 | |
| camel.cloud.consul.service-discovery.properties | 设置要使用的客户端属性。这些属性特定于使用哪个服务调用实施。例如,如果使用 ribbon,则客户端属性在 com.netflix.client.config.config.CommonClientConfigKey 中定义。 | map | |
| camel.cloud.consul.service-discovery.read-timeout-millis | OkHttpClient 读取超时。 | Long | |
| camel.cloud.consul.service-discovery.url | Consul 代理 URL。 | 字符串 | |
| camel.cloud.consul.service-discovery.user-name | 设置用于基本身份验证的用户名。 | 字符串 | |
| camel.cloud.consul.service-discovery.write-timeout-millis | OkHttpClient 写入超时。 | Long | |
| camel.cloud.dns.service-discovery.configurations | 定义其他配置定义。 | map | |
| camel.cloud.dns.service-discovery.domain | 域名; | 字符串 | |
| camel.cloud.dns.service-discovery.enabled | 启用组件。 | true | 布尔值 |
| camel.cloud.dns.service-discovery.properties | 设置要使用的客户端属性。这些属性特定于使用哪个服务调用实施。例如,如果使用 ribbon,则客户端属性在 com.netflix.client.config.config.CommonClientConfigKey 中定义。 | map | |
| camel.cloud.dns.service-discovery.proto | 所需服务的传输协议。 | _tcp | 字符串 |
| camel.cloud.etcd.service-discovery.configurations | 定义其他配置定义。 | map | |
| camel.cloud.etcd.service-discovery.enabled | 启用组件。 | true | 布尔值 |
| camel.cloud.etcd.service-discovery.password | 用于基本身份验证的密码。 | 字符串 | |
| camel.cloud.etcd.service-discovery.properties | 设置要使用的客户端属性。这些属性特定于使用哪个服务调用实施。例如,如果使用 ribbon,则客户端属性在 com.netflix.client.config.config.CommonClientConfigKey 中定义。 | map | |
| camel.cloud.etcd.service-discovery.service-path | 查找服务发现的路径。 | /services/ | 字符串 |
| camel.cloud.etcd.service-discovery.timeout | 设置操作可以完成的最长时间。 | Long | |
| camel.cloud.etcd.service-discovery.type | 要设置发现类型,有效的值有 on-demand 和 watch。 | 按需 | 字符串 |
| camel.cloud.etcd.service-discovery.uris | 客户端可以连接的 URI。 | 字符串 | |
| camel.cloud.etcd.service-discovery.user-name | 用于基本身份验证的用户名。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.api-version | 使用客户端查找时设置 API 版本。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.ca-cert-data | 使用客户端查找时设置证书颁发机构数据。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.ca-cert-file | 在使用客户端查找时,设置从文件加载的证书颁发机构数据。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.client-cert-data | 在使用客户端查找时设置客户端证书数据。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.client-cert-file | 在使用客户端查找时,设置从文件加载的客户端证书数据。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.client-key-algo | 在使用客户端查找时设置客户端密钥存储算法,如 RSA。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.client-key-data | 在使用客户端查找时设置 Client Keystore 数据。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.client-key-file | 在使用客户端查找时,设置从文件加载的客户端密钥存储数据。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.client-key-passphrase | 在使用客户端查找时设置客户端密钥存储密码短语。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.configurations | 定义其他配置定义。 | map | |
| camel.cloud.kubernetes.service-discovery.dns-domain | 设置 DNS 查找使用的 DNS 域。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.enabled | 启用组件。 | true | 布尔值 |
| camel.cloud.kubernetes.service-discovery.lookup | 如何执行服务查找。可能的值有:client、dns 和 environment。在使用客户端时,客户端查询 kubernetes master 以获取提供该服务的活跃 pod 列表,然后选择随机(或循环)选择 pod。使用 dns 时,服务名称解析为 name.namespace.svc.dnsDomain。使用 dnssrv 时,服务名称通过 .. ...svc. .. 的 SRV 查询解析。在使用环境时,环境变量将被用来查找该服务。默认情况下使用环境。 | 环境 | 字符串 |
| camel.cloud.kubernetes.service-discovery.master-url | 在使用客户端查找时,将 URL 设置为 master。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.namespace | 设置要使用的命名空间。默认情况下,将使用 ENV 变量 KUBERNETES_MASTER 中的 namespace。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.oauth-token | 在使用客户端查找时,设置 OAUTH 令牌用于身份验证(而不是用户名/密码)。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.password | 在使用客户端查找时设置用于身份验证的密码。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.port-name | 设置用于 DNS/DNSSRV 查询的端口名称。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.port-protocol | 设置用于 DNS/DNSSRV 查询的端口协议。 | 字符串 | |
| camel.cloud.kubernetes.service-discovery.properties | 设置要使用的客户端属性。这些属性特定于使用哪个服务调用实施。例如,如果使用 ribbon,则客户端属性在 com.netflix.client.config.config.CommonClientConfigKey 中定义。 | map | |
| camel.cloud.kubernetes.service-discovery.trust-certs | 设置在使用客户端查找时是否打开信任证书检查。 | false | 布尔值 |
| camel.cloud.kubernetes.service-discovery.username | 使用客户端查找时设置用于身份验证的用户名。 | 字符串 | |
| camel.cloud.ribbon.load-balancer.client-name | 设置 Ribbon 客户端名称。 | 字符串 | |
| camel.cloud.ribbon.load-balancer.configurations | 定义其他配置定义。 | map | |
| camel.cloud.ribbon.load-balancer.enabled | 启用组件。 | true | 布尔值 |
| camel.cloud.ribbon.load-balancer.namespace | 命名空间。 | 字符串 | |
| camel.cloud.ribbon.load-balancer.password | 密码。 | 字符串 | |
| camel.cloud.ribbon.load-balancer.properties | 设置要使用的客户端属性。这些属性特定于使用哪个服务调用实施。例如,如果使用 ribbon,则客户端属性在 com.netflix.client.config.config.CommonClientConfigKey 中定义。 | map | |
| camel.cloud.ribbon.load-balancer.username | 用户名。 | 字符串 | |
| camel.hystrix.allow-maximum-size-to-diverge-from-core-size | 允许配置 maximumSize 生效。该值可等于或大于 coreSize。 | false | 布尔值 |
| camel.hystrix.circuit-breaker-enabled | 是否使用 HystrixCircuitBreaker。如果 false 不使用断路器逻辑,并且所有允许的请求。这与 circuitBreakerForceClosed ()的效果类似,除了继续跟踪指标并知道是否应打开/关闭,此属性会导致甚至无法实例化断路器。 | true | 布尔值 |
| camel.hystrix.circuit-breaker-error-threshold-percentage | 断路器指向的错误百分比阈值(如 50)将打开行符和拒绝请求。它将在 circuitBreakerSleepWindowInMilliseconds 中定义的持续时间内保持三倍;与 HystrixCommandMetrics.getHealthCounts ()相比的错误百分比。 | 50 | 整数 |
| camel.hystrix.circuit-breaker-force-closed | 如果为 HystrixCircuitBreaker#allowRequest (),则始终返回 true 以允许请求,而不考虑 HystrixCommandMetrics.getHealthCounts ()的错误百分比。circuitBreakerForceOpen ()属性具有优先权,因此如果设为 true 此属性不执行任何操作。 | false | 布尔值 |
| camel.hystrix.circuit-breaker-force-open | 如果 HystrixCircuitBreaker.allowRequest ()始终返回 false,则会导致电路处于打开(行)并拒绝所有请求。此属性优先于 circuitBreakerForceClosed (); | false | 布尔值 |
| camel.hystrix.circuit-breaker-request-volume-threshold | 在 HystrixCircuitBreaker 之前,metricsRollingStatisticalWindowInMilliseconds ()中必须存在的最少请求数。如果达到这个数字的记号,则电路不三,无论错误百分比如何。 | 20 | 整数 |
| camel.hystrix.circuit-breaker-sleep-window-in-milliseconds | HystrixCircuitBreaker trips 之后的时间(毫秒)会在尝试请求前等待它。 | 5000 | 整数 |
| camel.hystrix.configurations | 定义其他配置定义。 | map | |
| camel.hystrix.core-pool-size | 传递给 java.util.concurrent.ThreadPoolExecutor#setCorePoolSize (int)的核心 thread-pool 大小。 | 10 | 整数 |
| camel.hystrix.enabled | 启用组件。 | true | 布尔值 |
| camel.hystrix.execution-isolation-semaphore-max-concurrent-requests | 允许 HystrixCommand.run ()的并发请求数。超过并发限制的请求将被拒绝。Applicable only when executionIsolationStrategy == SEMAPHORE. | 20 | 整数 |
| camel.hystrix.execution-isolation-strategy | 哪些隔离策略 HystrixCommand.run ()将通过.如果 THREAD,它将在单独的线程上执行,并且并发请求受 thread-pool 中的线程数量限制。如果 SEMAPHORE,它将在调用线程上执行,并发请求受信号数的限制。 | 线程 | 字符串 |
| camel.hystrix.execution-isolation-thread-interrupt-on-timeout | 执行线程是否应该在线程超时时尝试中断(使用 Future#cancel )。仅在 executionIsolationStrategy ()== THREAD 时才适用。 | true | 布尔值 |
| camel.hystrix.execution-timeout-enabled | 是否为此命令启用了超时机制。 | true | 布尔值 |
| camel.hystrix.execution-timeout-in-milliseconds | 以秒为单位的时间(以毫秒为单位),命令将超时和停止执行。如果 executionIsolationThreadInterruptOnTimeout == true,且命令为线程隔离,则执行线程将中断。如果该命令非常隔离,且 HystrixObservableCommand,则该命令将取消订阅。 | 1000 | 整数 |
| camel.hystrix.fallback-enabled | 出现故障时是否应尝试 HystrixCommand.getFallback ()。 | true | 布尔值 |
| camel.hystrix.fallback-isolation-semaphore-max-concurrent-requests | 允许 HystrixCommand.getFallback ()的并发请求数。超过并发限制的请求将快速失败,并且不会尝试检索回退。 | 10 | 整数 |
| camel.hystrix.group-key | 设置要使用的 group 键。默认值为 CamelHystrix。 | CamelHystrix | 字符串 |
| camel.hystrix.keep-alive-time | 在分钟内持续的时间(以分钟为单位)传递到 ThreadPoolExecutor#setKeepAliveTime (long,TimeUnit)。 | 1 | 整数 |
| camel.hystrix.max-queue-size | HystrixConcurrencyStrategy.getBlockingQueue (int)传递给 BlockingQueue 的 max 队列大小应仅影响 threadpool 的实例化 - 它不是很好更改队列大小。为此,请使用 queueSizeRejectionThreshold ()。 | -1 | 整数 |
| camel.hystrix.maximum-size | Maximum thread-pool size that gets passed to ThreadPoolExecutor#setMaximumPoolSize(int) .这是在开始拒绝 HystrixCommands 的情况下可以支持的最大并发数量。请注意,只有在您设置了 allowMaximumSizeToDivergeFromCoreSize 时,此设置才会生效。 | 10 | 整数 |
| camel.hystrix.metrics-health-snapshot-interval-in-milliseconds | 允许计算成功和错误百分比和影响 HystrixCircuitBreaker.isOpen ()状态之间等待的时间(毫秒)。在高容量电路上,错误百分比的连续计算可能会成为 CPU 密集型,因此这控制其计算的频率。 | 500 | 整数 |
| camel.hystrix.metrics-rolling-percentile-bucket-size | 存储在滚动百分比的每个存储桶中的最大值数。这会在 HystrixCommandMetrics 内通过 HystrixRollingPercentile 传递。 | 10 | 整数 |
| camel.hystrix.metrics-rolling-percentile-enabled | 应该在 HystrixCommandMetrics 内使用 HystrixRollingPercentile 捕获数值。 | true | 布尔值 |
| camel.hystrix.metrics-rolling-percentile-window-buckets | 滚动百分比窗口的存储桶数量划分到.这会在 HystrixCommandMetrics 内通过 HystrixRollingPercentile 传递。 | 6 | 整数 |
| camel.hystrix.metrics-rolling-percentile-window-in-milliseconds | 以毫秒为单位进行编程滚动窗口的持续时间。这会在 HystrixCommandMetrics 内通过 HystrixRollingPercentile 传递。 | 10000 | 整数 |
| camel.hystrix.metrics-rolling-statistical-window-buckets | 滚动统计窗口的存储桶数量划分到.这被传递到 HystrixCommandMetrics 内 HystrixRollingNumber 中。 | 10 | 整数 |
| camel.hystrix.metrics-rolling-statistical-window-in-milliseconds | 该属性以毫秒为单位设置统计滚动窗口的持续时间。这是为线程池保留指标的时长。窗口分为 bucket,并通过这些增量推出部署。 | 10000 | 整数 |
| camel.hystrix.queue-size-rejection-threshold | 队列大小 rejection 阈值是分区最大大小,即使尚未达到 maxQueueSize,也会发生拒绝。这是因为 BlockingQueue 的 maxQueueSize 无法动态更改,并且我们希望支持动态更改影响拒绝的队列大小。HystrixCommand 使用这个问题,在排队线程来执行时。 | 5 | 整数 |
| camel.hystrix.request-log-enabled | HystrixCommand execution 和 events 应该记录到 HystrixRequestLog。 | true | 布尔值 |
| camel.hystrix.thread-pool-key | 设置要使用的线程池键。默认情况下,将使用与 groupKey 相同的值。 | CamelHystrix | 字符串 |
| camel.hystrix.thread-pool-rolling-number-statistical-window-buckets | 滚动统计窗口的存储桶数量划分到.这将传递到每个 HystrixRollingNumbers 实例内的 HystrixRollingNumbers 实例。 | 10 | 整数 |
| camel.hystrix.thread-pool-rolling-number-statistical-window-in-milliseconds | 统计滚动窗口的持续时间(以毫秒为单位)。这将传递到每个 HystrixRollingNumbers 实例内的 HystrixRollingNumbers 实例。 | 10000 | 整数 |
| camel.language.constant.enabled | 是否启用恒定语言的自动配置。这会被默认启用。 | 布尔值 | |
| camel.language.constant.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.language.csimple.enabled | 是否启用一个简单语言的自动配置。这会被默认启用。 | 布尔值 | |
| camel.language.csimple.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.language.exchangeproperty.enabled | 是否启用交换属性语言的自动配置。这会被默认启用。 | 布尔值 | |
| camel.language.exchangeproperty.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.language.file.enabled | 是否启用文件语言的自动配置。这会被默认启用。 | 布尔值 | |
| camel.language.file.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.language.header.enabled | 是否启用标头语言的自动配置。这会被默认启用。 | 布尔值 | |
| camel.language.header.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.language.ref.enabled | 是否启用 ref 语言自动配置。这会被默认启用。 | 布尔值 | |
| camel.language.ref.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.language.simple.enabled | 是否启用简单语言的自动配置。这会被默认启用。 | 布尔值 | |
| camel.language.simple.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.language.tokenize.enabled | 是否启用令牌化语言配置。这会被默认启用。 | 布尔值 | |
| camel.language.tokenize.group-delimiter | 设置分组时要使用的分隔符。如果没有设置,则令牌将用作分隔符。 | 字符串 | |
| camel.language.tokenize.trim | 是否修剪值是否删除前导和尾随空格和换行符。 | true | 布尔值 |
| camel.resilience4j.automatic-transition-from-open-to-half-open-enabled | 在完成 waitDurationInOpenState 后,启用从 OPEN 自动过渡到 HALF_OPEN 状态。 | false | 布尔值 |
| camel.resilience4j.circuit-breaker-ref | 指的是现有的 io.github.resilience4j.circuitbreaker.CircuitBreaker 实例从 registry 中查询和使用。在使用这个时,其他任何断路器选项都不会被使用。 | 字符串 | |
| camel.resilience4j.config-ref | 指的是现有的 io.github.resilience4j.circuitbreaker.CircuitBreakerConfig 实例从 registry 中查询和使用。 | 字符串 | |
| camel.resilience4j.configurations | 定义其他配置定义。 | map | |
| camel.resilience4j.enabled | 启用组件。 | true | 布尔值 |
| camel.resilience4j.failure-rate-threshold | 配置失败率阈值(以百分比表示)。如果失败率相等或大于 CircuitBreaker 转换为打开的阈值,并启动短路调用。阈值必须大于 0,且不能超过 100。默认值为 50 个百分比。 | 浮点值 | |
| camel.resilience4j.minimum-number-of-calls | 在 CircuitBreaker 前配置所需的最少调用数(每个滑动窗口期限)可以计算错误率。例如,如果 minimumNumberOfCalls 为 10,则必须记录至少 10 个调用,然后才能计算失败率。如果只有 9 个调用已记录为 CircuitBreaker,则不会过渡到打开,即使所有 9 调用都失败。默认 minimumNumberOfCalls 为 100。 | 100 | 整数 |
| camel.resilience4j.permitted-number-of-calls-in-half-open-state | 配置当 CircuitBreaker 打开时允许的调用数。大小必须大于 0。默认大小为 10。 | 10 | 整数 |
| camel.resilience4j.sliding-window-size | 配置滑动窗口的大小,用于记录当 CircuitBreaker 关闭时调用的结果。slidingWindowSize 配置滑动窗口的大小。滑动窗口可以是基于计数或基于时间的。如果 slidingWindowType 是 COUNT_BASED,则记录最后 slidingWindowSize 调用和聚合。如果 slidingWindowType 是 TIME_BASED,则记录并聚合最后一个 slidingWindowSize 秒的调用。slidingWindowSize 必须大于 0。minimumNumberOfCalls 必须大于 0。如果 slidingWindowType 是 COUNT_BASED,则 minimumNumberOfCalls 无法大于 slidingWindowSize。如果 slidingWindowType 是 TIME_BASED,您可以选择所需的任何内容。默认 slidingWindowSize 为 100。 | 100 | 整数 |
| camel.resilience4j.sliding-window-type | 配置滑动窗口的类型,用于在关闭 CircuitBreaker 时记录调用的结果。滑动窗口可以是基于计数或基于时间的。如果 slidingWindowType 是 COUNT_BASED,则记录最后 slidingWindowSize 调用和聚合。如果 slidingWindowType 是 TIME_BASED,则记录并聚合最后一个 slidingWindowSize 秒的调用。默认 slidingWindowType 是 COUNT_BASED。 | COUNT_BASED | 字符串 |
| camel.resilience4j.slow-call-duration-threshold | 配置以上调用的持续时间阈值(秒),并将调用被视为慢,并增加较慢的调用百分比。默认值为 60 秒。 | 60 | 整数 |
| camel.resilience4j.slow-call-rate-threshold | 配置以百分比表示的阈值。当调用持续时间大于 slowCallDuration 时,CircuitBreaker 会考虑调用的速度。当调用的速度较慢或大于阈值时,CircuitBreaker 会转换为 open,并开始短路调用。阈值必须大于 0,且不能超过 100。默认值为 100 个百分比,这意味着所有记录的调用都必须比 slowCallDurationThreshold 慢。 | 浮点值 | |
| camel.resilience4j.wait-duration-in-open-state | 配置等待持续时间(以秒为单位),指定 CircuitBreaker 在进入半打开前应保持打开的时间。默认值为 60 秒。 | 60 | 整数 |
| camel.resilience4j.writable-stack-trace-enabled | 启用可写入堆栈追踪。当设置为 false 时,Exception.getStackTrace 将返回零长度数组。当断路器开路时,这可用于减少日志垃圾邮件,因为存在意外情况的原因(断路器为短路调用)。 | true | 布尔值 |
| camel.rest.api-component | 用作 REST API 的 Camel 组件的名称(如 swagger)如果尚未明确配置 API 组件,则 Camel 组件负责提供和生成 REST API 文档,或者一个机构.apache.camel.spi.RestApiProcessorFactory 在 registry 中注册。如果找到其中任何一个,那么将使用。 | 字符串 | |
| camel.rest.api-context-path | 设置领先的 API 上下文,路径 REST API 服务将使用。这在使用 camel-servlet 等组件时可使用,其中部署 Web 应用程序使用 context-path 部署。 | 字符串 | |
| camel.rest.api-context-route-id | 设置用于 REST API 服务的路由 ID。路由默认为使用自动分配的路由 ID。 | 字符串 | |
| camel.rest.api-host | 要将特定的主机名用于 API 文档(如 swagger),这可以使用此配置的主机名覆盖生成的主机。 | 字符串 | |
| camel.rest.api-property | 允许配置 api 文档(swagger)的许多额外属性。例如,将属性 api.title 设置为 my cool stuff。 | map | |
| camel.rest.api-vendor-extension | 在 Rest API 中是否启用了供应商扩展。如果启用,Camel 将包括厂商扩展(例如以 x- 开头的键),如路由 ID、类名称等。不是所有第三方 API 网关和工具支持导入 API 文档时的 vendor-extensions。 | false | 布尔值 |
| camel.rest.binding-mode | 设置要使用的绑定模式。默认值为 off。 | RestBindingMode | |
| camel.rest.client-request-validation | 是否启用客户端请求的验证,以检查客户端的 Content-Type 和 Accept 标头是否受其使用/生成的设置的 Rest-DSL 配置的支持。这可打开,以启用此检查。如果出现验证错误,则返回 HTTP 状态代码 415 或 406。默认值为 false。 | false | 布尔值 |
| camel.rest.component | 用于 REST 传输的 Camel Rest 组件(consumer),如 netty-http、jetty、servlet、undertow。如果没有明确配置组件,则 Camel 将会查找(如果是与 Rest DSL 集成)的 Camel 组件,或者一个 org.apache.camel.spi.RestConsumerFactory 在注册表中注册。如果找到其中任何一个,那么将使用。 | 字符串 | |
| camel.rest.component-property | 允许配置使用中其余组件的许多额外属性。 | map | |
| camel.rest.consumer-property | 允许配置其余使用者的更多额外属性。 | map | |
| camel.rest.context-path | 设置 REST 服务将要使用的领先上下文路径。这在使用 camel-servlet 等组件时可使用,其中部署 Web 应用程序使用 context-path 部署。或者对于包括 HTTP 服务器的组件,如 camel-jetty 或 camel-netty-http。 | 字符串 | |
| camel.rest.cors-headers | 允许配置自定义 CORS 标头。 | map | |
| camel.rest.data-format-property | 允许配置所使用的数据格式的更多额外属性。例如,将属性 prettyPrint 设置为 true,以以用户的形式输出 json。属性可以加上前缀来表示 选项,仅用于 JSON 或 XML,表示 IN 或 OUT。前缀为:json.in. json.out. xml.in. xml.out.例如,值为 xml.out.mustBeJAXBElement 的键只适用于传出的 XML 数据格式。没有前缀的密钥是所有情况的通用密钥。 | map | |
| camel.rest.enable-cors | 是否在 HTTP 响应中启用 CORS 标头。默认值为 false。 | false | 布尔值 |
| camel.rest.endpoint-property | 允许配置其余端点的许多额外属性。 | map | |
| camel.rest.host | 用于公开 REST 服务的主机名。 | 字符串 | |
| camel.rest.host-name-resolver | 如果没有明确配置主机名,则使用此解析器来计算 REST 服务将使用的主机名。 | RestHostNameResolver | |
| camel.rest.json-data-format | 要使用的特定 json 数据格式的名称。默认情况下将使用 json-jackson。重要:此选项仅用于设置数据格式的自定义名称,而不引用现有的数据格式实例。 | 字符串 | |
| camel.rest.port | 用于公开 REST 服务的端口号。请注意,如果您使用 servlet 组件,然后此处配置的端口号没有应用,因为使用的端口号是 servlet 组件使用的实际端口号。例如,如果使用 Apache Tomcat 它的 tomcat http 端口,如果在 Karaf 中使用 Apache Karaf,则默认情况下使用端口 8181。尽管在这些设置端口号时,允许工具和 JMX 了解端口号,因此建议将端口号设置为 servlet 引擎使用的数字。 | 字符串 | |
| camel.rest.producer-api-doc | 设置 api 文档(swagger api)的位置,REST producer 将用来验证 REST uri 和查询参数相应地对 api 文档有效。这需要将 camel-swagger-java 添加到 classpath 中,任何未命中的配置将使 Camel 在启动时失败并报告错误。api 文档的位置默认从 classpath 加载,但您可以使用 file: 或 http: 来指代从文件或 http url 加载的资源。 | 字符串 | |
| camel.rest.producer-component | 设置用作 REST producer 的 Camel 组件的名称。 | 字符串 | |
| camel.rest.scheme | 用于公开 REST 服务的方案。通常支持 http 或 https。默认值为 http。 | 字符串 | |
| camel.rest.skip-binding-on-error-code | 如果存在自定义 HTTP 错误代码标头,是否跳过输出绑定。这允许构建没有绑定到 json / xml 等的自定义错误消息,否则成功消息会这样做。 | false | 布尔值 |
| camel.rest.use-x-forward-headers | 是否在主机和相关设置中使用 X-Forward 标头。默认值为 true。 | true | 布尔值 |
| camel.rest.xml-data-format | 要使用的特定 XML 数据格式的名称。默认情况下将使用 jaxb。重要:此选项仅用于设置数据格式的自定义名称,而不引用现有的数据格式实例。 | 字符串 | |
| camel.rest.api-context-id-pattern | 弃用的 Sets CamelContext id 模式仅允许从 CamelContext 中其余服务中恢复 API,该名称与模式匹配。模式 名称引用 CamelContext 名称,使其仅与当前 CamelContext 相匹配。对于任何其他值,模式使用 PatternHelper#matchPattern (String,String)中的规则。 | 字符串 | |
| camel.rest.api-context-listing | 弃用的 设置是否为 JVM 中所有可用 CamelContext 的列表中启用。如果启用,允许发现这些上下文,如果是 false,则只使用当前的 CamelContext。 | false | 布尔值 |