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 值:

  • InOnly
  • InOut
  • InOptionalOut
 

ExchangePattern

fileNameExtWhitelist (consumer (advanced))

以逗号分隔的文件扩展列表。具有这些扩展的上传将存储在本地。null 值或星号()将允许所有文件。

 

字符串

HeaderFilterStrategy (advanced)

使用自定义 HeaderFilterStrategy 将标头过滤到或从 Camel 消息过滤。

 

HeaderFilterStrategy

platformHttpEngine (advanced)

用于提供此端点请求的 HTTP 服务器引擎实施。

 

PlatformHttpEngine

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.