49.2. 配置选项
Camel 组件在两个独立级别上配置:
- 组件级别
- 端点级别
49.2.1. 配置组件选项
组件级别是最高级别,它包含端点继承的常规配置。例如,一个组件可能具有安全设置、用于身份验证的凭证、用于网络连接的 url 等等。
某些组件只有几个选项,其他组件可能会有许多选项。由于组件通常已配置了常用的默认值,因此通常只需要在组件上配置几个选项,或者根本不需要配置任何选项。
可以在配置文件(application.properties|yaml)中使用 组件 DSL 配置组件,也可直接使用 Java 代码完成。
49.2.2. 配置端点选项
您发现自己在端点上配置了一个,因为端点通常有许多选项,允许您配置您需要的端点。这些选项被分别分类为:端点作为消费者(来自)被使用,和作为生成者(到)使用,或被两者使用。
配置端点通常在端点 URI 中作为路径和查询参数直接进行。您还可以使用 Endpoint DSL 作为配置端点的安全方法。
在配置选项时,最好使用 Property Placeholders,它不允许硬编码 URL、端口号、敏感信息和其他设置。换句话说,占位符允许从您的代码外部配置,并提供更多灵活性和重复使用。
以下两节列出了所有选项,首为于组件,后跟端点。
49.2.3. 组件选项
平台 HTTP 组件支持 3 个选项,如下所列。
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
autowiredEnabled (advanced) | 是否启用自动关闭。这用于自动关闭选项(选项必须标记为 autowired),方法是在 registry 中查找查找是否有单个匹配类型实例,然后在组件上配置。这可以用于自动配置 JDBC 数据源、JMS 连接工厂、AWS 客户端等。 | true | 布尔值 |
引擎 (advanced) | 为服务请求的 HTTP 服务器引擎实施。 | PlatformHttpEngine |
49.2.4. 端点选项
平台 HTTP 端点使用 URI 语法进行配置:
platform-http:path
使用以下路径和查询参数:
49.2.4.1. 路径参数(1 参数)
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
path (consumer) | 需要此 端点提供 HTTP 请求的路径,用于代理使用 'proxy'。 | 字符串 |
49.2.4.2. 查询参数(11 参数)
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
consumed (consumer) |
此端点接受的内容类型作为输入,如 application/xml 或 application/json. null 或 | 字符串 | |
httpMethodRestrict (consumer) | 以逗号分隔的 HTTP 方法列表,如 GET、POST。如果没有指定方法,则会提供所有方法。 | 字符串 | |
matchOnUriPrefix (consumer) | 如果没有找到完全匹配,消费者是否应该尝试通过匹配 URI 前缀来查找目标消费者。 | false | 布尔值 |
muteException (consumer) | 如果启用并在响应正文的消费者端处理者失败的处理,则响应的堆栈跟踪不会包含异常的堆栈跟踪。 | true | 布尔值 |
generate (consumer) | 此端点生成的内容类型,如 application/xml 或 application/json。 | 字符串 | |
bridgeErrorHandler (consumer (advanced)) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
exceptionHandler (consumer (advanced)) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer (advanced)) | 在消费者创建交换时设置交换模式。 Enum 值:
| ExchangePattern | |
fileNameExtWhitelist (consumer (advanced)) | 以逗号分隔的文件扩展列表。具有这些扩展的上传将存储在本地。null 值或星号()将允许所有文件。 | 字符串 | |
HeaderFilterStrategy (advanced) | 使用自定义 HeaderFilterStrategy 将标头过滤到或从 Camel 消息过滤。 | HeaderFilterStrategy | |
platformHttpEngine (advanced) | 用于提供此端点请求的 HTTP 服务器引擎实施。 | PlatformHttpEngine |