22.6. Spring Boot Auto-Configuration


在 Spring Boot 中使用 fhir 时,请确保使用以下 Maven 依赖项来支持自动配置:

<dependency>
  <groupId>org.apache.camel.springboot</groupId>
  <artifactId>camel-fhir-starter</artifactId>
</dependency>
Copy to Clipboard Toggle word wrap

组件支持 56 选项,如下所列。

Expand
名称描述默认类型

camel.component.fhir.access-token

OAuth 访问令牌。

 

字符串

camel.component.fhir.autowired-enabled

是否启用自动关闭。这用于自动关闭选项(选项必须标记为 autowired),方法是在 registry 中查找查找是否有单个匹配类型实例,然后在组件上配置。这可以用于自动配置 JDBC 数据源、JMS 连接工厂、AWS 客户端等。

true

布尔值

camel.component.fhir.bridge-error-handler

允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。

false

布尔值

camel.component.fhir.client

使用自定义客户端。选项是 ca.uhn.fhir.rest.client.api.IGenericClient 类型。

 

IGenericClient

camel.component.fhir.client-factory

使用自定义客户端工厂。选项是 ca.uhn.fhir.rest.client.api.IRestfulClientFactory 类型。

 

IRestfulClientFactory

camel.component.fhir.compress

将传出(POST/PUT)内容压缩为 GZIP 格式。

false

布尔值

camel.component.fhir.configuration

使用共享配置。选项是 org.apache.camel.component.fhir.FhirConfiguration 类型。

 

FhirConfiguration

camel.component.fhir.connection-timeout

尝试并建立初始 TCP 连接(在 ms 中)的时间。

10000

整数

camel.component.fhir.defer-model-scanning

设置此选项时,在实际访问给定类型的子列表之前,模型类将不会扫描。

false

布尔值

camel.component.fhir.enabled

是否启用 fhir 组件的自动配置。这默认是启用的。

 

布尔值

camel.component.fhir.encoding

用于所有请求的编码。

 

字符串

camel.component.fhir.fhir-context

FhirContext 是要创建的昂贵对象。为避免创建多个实例,可以直接设置。选项是一个 ca.uhn.fhir.context.FhirContext 类型。

 

FhirContext

camel.component.fhir.fhir-version

要使用的 FHIR 版本。

R4

字符串

camel.component.fhir.force-conformance-check

强制检查。

false

布尔值

camel.component.fhir.lazy-start-producer

制作者是否应启动 lazy (在第一个消息中)。通过启动 lazy,您可以使用此选项来允许 CamelContext 和路由在制作者启动期间启动,并导致路由启动失败。通过将这个启动延迟到延迟,那么可以通过 Camel 的路由错误处理程序路由消息期间,可以处理启动失败。请注意,在处理第一个消息时,创建并启动制作者可能需要稍等时间,并延长处理的总处理时间。

false

布尔值

camel.component.fhir.log

将记录每个请求和响应。

false

布尔值

camel.component.fhir.password

用于基本身份验证的用户名。

 

字符串

camel.component.fhir.pretty-print

pretty 打印所有请求。

false

布尔值

camel.component.fhir.proxy-host

代理主机。

 

字符串

camel.component.fhir.proxy-password

代理密码。

 

字符串

camel.component.fhir.proxy-port

代理端口。

 

整数

camel.component.fhir.proxy-user

代理用户名。

 

字符串

camel.component.fhir.server-url

FHIR 服务器基础 URL。

 

字符串

camel.component.fhir.session-cookie

要添加到每个请求的 HTTP 会话 Cookie。

 

字符串

camel.component.fhir.socket-timeout

阻止单个读/写操作的时间(以 ms 为单位)。

10000

整数

camel.component.fhir.summary

请求服务器使用 _summary 参数修改响应。

 

字符串

camel.component.fhir.username

用于基本身份验证的用户名。

 

字符串

camel.component.fhir.validation-mode

当 Camel 验证 FHIR 服务器的一致声明时。

ONCE

字符串

camel.dataformat.fhirjson.content-type-header

数据格式是否应使用数据格式的类型设置 Content-Type 标头。例如,用于数据格式的 application/xml 示例到 XML,或者用于数据格式的应用程序/json 到 JSON。

true

布尔值

camel.dataformat.fhirjson.dont-encode-elements

如果提供,则指定不应编码的元素。此字段的有效值包括: Patient.name - Don't对病人名称 Patient.name.family 进行编码 - Don't对病人的系列名称 .text 进行编码 - 禁止对任何资源(只有第一个位置可能包含通配符)进行文本元素编码: 请注意,包括 meta 的值(如 Patient.meta )适用于 DSTU2 解析器,但含有子元素的值(如 Patient.meta.lastUpdated)只能在 DSTU3 模式中工作。

 

Set

camel.dataformat.fhirjson.dont-strip-versions-from-references-at-paths

如果提供的值,则指定路径中的任何资源引用都会对资源版本进行编码,而不是在编码过程中自动剥离。此设置对解析过程没有影响。这个方法提供比 setStripVersionsFromReferences (String)和此方法指定的任何路径的精细控制级别,即使 setStripVersionsFromReferences (String)已设为 true (这是默认设置)。

 

list

camel.dataformat.fhirjson.enabled

是否启用 fhirJson 数据格式的自动配置。这默认是启用的。

 

布尔值

camel.dataformat.fhirjson.encode-elements

如果提供,则指定应编码的元素,到所有其他项的排除。此字段的有效值包括:Patient - Encode patient 和其所有子人的 Patient.name - Encode 仅包括病人的名称 Patient.name.family - Encode 仅含有任何资源的家族名称 .text - 请编码任何资源(仅第一个位置可能包含通配符)上的文本元素。(必需)- 这是一个特殊情况,从而导致任何资源(需要包括通配符)进行编码。

 

Set

camel.dataformat.fhirjson.encode-elements-applies-to-child-resources-only

如果设置为 true (默认为 false),则提供给 setEncodeElements (Set)的值不会应用到 root 资源(通常是一个捆绑包),但会应用到其中包含的任何子资源(例如,搜索该捆绑包中的搜索结果资源)。

false

布尔值

camel.dataformat.fhirjson.fhir-version

要使用的 FHIR 版本。可能的值有: DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4。

DSTU3

字符串

camel.dataformat.fhirjson.omit-resource-id

如果设置为 true (默认为 false),则正在编码的任何资源的 ID 都不会包含在输出中。请注意,这不适用于包含的资源,仅适用于 root 资源。换句话说,如果设为 true,则包含的资源仍会具有本地 ID,但外部/包含 ID 将不会具有 ID。

false

布尔值

camel.dataformat.fhirjson.override-resource-id-with-bundle-entry-full-url

如果设置为 true (默认值),Bundle.entry.fullUrl 将覆盖 Bundle.entry.resource 资源 ID (如果定义了 fullUrl)。将源数据解析为 Bundle 对象时会发生此行为。如果这不是所需的行为(例如,客户端代码希望在 fullUrl 和资源 id 之间执行额外的验证检查),则将其设置为 false。

false

布尔值

camel.dataformat.fhirjson.pretty-print

设置用户良好的打印标志,这意味着解析器将使用人类可读的空间和元素之间的新行来编码资源,而不是尽可能精简输出。

false

布尔值

camel.dataformat.fhirjson.server-base-url

设置此解析器使用的服务器基本 URL。如果设置了值,则如果以绝对 URL 提供资源引用,则会将资源引用转换为相对引用,但具有与给定基础匹配的基础。

 

字符串

camel.dataformat.fhirjson.strip-versions-from-references

如果设置为 true (默认值),在对资源进行编码时,包含版本的资源引用将被删除。这通常很好,因为在大多数情况下,从一个资源引用应该通过 ID 对资源的引用,而不是 ID 和版本。然而,在某些情况下,可能需要在资源链接中保留版本。在这种情况下,这个值应设为 false。此方法提供全局禁用参考编码的功能。如果需要精细控制,请使用 setDontStripVersionsFromReferencesAtPaths (List)。

false

布尔值

camel.dataformat.fhirjson.summary-mode

如果设置为 true (默认为 false)则仅包含由 FHIR 规格标记为作为摘要元素的元素。

false

布尔值

camel.dataformat.fhirjson.suppress-narratives

如果设置为 true (默认为 false),则编码的值中不会包括 narratives。

false

布尔值

camel.dataformat.fhirxml.content-type-header

数据格式是否应使用数据格式的类型设置 Content-Type 标头。例如,用于数据格式的 application/xml 示例到 XML,或者用于数据格式的应用程序/json 到 JSON。

true

布尔值

camel.dataformat.fhirxml.dont-encode-elements

如果提供,则指定不应编码的元素。此字段的有效值包括: Patient.name - Don't对病人名称 Patient.name.family 进行编码 - Don't对病人的系列名称 .text 进行编码 - 禁止对任何资源(只有第一个位置可能包含通配符)进行文本元素编码: 请注意,包括 meta 的值(如 Patient.meta )适用于 DSTU2 解析器,但含有子元素的值(如 Patient.meta.lastUpdated)只能在 DSTU3 模式中工作。

 

Set

camel.dataformat.fhirxml.dont-strip-versions-from-references-at-paths

如果提供的值,则指定路径中的任何资源引用都会对资源版本进行编码,而不是在编码过程中自动剥离。此设置对解析过程没有影响。这个方法提供比 setStripVersionsFromReferences (String)和此方法指定的任何路径的精细控制级别,即使 setStripVersionsFromReferences (String)已设为 true (这是默认设置)。

 

list

camel.dataformat.fhirxml.enabled

是否启用 fhirXml 数据格式的自动配置。这默认是启用的。

 

布尔值

camel.dataformat.fhirxml.encode-elements

如果提供,则指定应编码的元素,到所有其他项的排除。此字段的有效值包括:Patient - Encode patient 和其所有子人的 Patient.name - Encode 仅包括病人的名称 Patient.name.family - Encode 仅含有任何资源的家族名称 .text - 请编码任何资源(仅第一个位置可能包含通配符)上的文本元素。(必需)- 这是一个特殊情况,从而导致任何资源(需要包括通配符)进行编码。

 

Set

camel.dataformat.fhirxml.encode-elements-applies-to-child-resources-only

如果设置为 true (默认为 false),则提供给 setEncodeElements (Set)的值不会应用到 root 资源(通常是一个捆绑包),但会应用到其中包含的任何子资源(例如,搜索该捆绑包中的搜索结果资源)。

false

布尔值

camel.dataformat.fhirxml.fhir-version

要使用的 FHIR 版本。可能的值有: DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4。

DSTU3

字符串

camel.dataformat.fhirxml.omit-resource-id

如果设置为 true (默认为 false),则正在编码的任何资源的 ID 都不会包含在输出中。请注意,这不适用于包含的资源,仅适用于 root 资源。换句话说,如果设为 true,则包含的资源仍会具有本地 ID,但外部/包含 ID 将不会具有 ID。

false

布尔值

camel.dataformat.fhirxml.override-resource-id-with-bundle-entry-full-url

如果设置为 true (默认值),Bundle.entry.fullUrl 将覆盖 Bundle.entry.resource 资源 ID (如果定义了 fullUrl)。将源数据解析为 Bundle 对象时会发生此行为。如果这不是所需的行为(例如,客户端代码希望在 fullUrl 和资源 id 之间执行额外的验证检查),则将其设置为 false。

false

布尔值

camel.dataformat.fhirxml.pretty-print

设置用户良好的打印标志,这意味着解析器将使用人类可读的空间和元素之间的新行来编码资源,而不是尽可能精简输出。

false

布尔值

camel.dataformat.fhirxml.server-base-url

设置此解析器使用的服务器基本 URL。如果设置了值,则如果以绝对 URL 提供资源引用,则会将资源引用转换为相对引用,但具有与给定基础匹配的基础。

 

字符串

camel.dataformat.fhirxml.strip-versions-from-references

如果设置为 true (默认值),在对资源进行编码时,包含版本的资源引用将被删除。这通常很好,因为在大多数情况下,从一个资源引用应该通过 ID 对资源的引用,而不是 ID 和版本。然而,在某些情况下,可能需要在资源链接中保留版本。在这种情况下,这个值应设为 false。此方法提供全局禁用参考编码的功能。如果需要精细控制,请使用 setDontStripVersionsFromReferencesAtPaths (List)。

false

布尔值

camel.dataformat.fhirxml.summary-mode

如果设置为 true (默认为 false)则仅包含由 FHIR 规格标记为作为摘要元素的元素。

false

布尔值

camel.dataformat.fhirxml.suppress-narratives

如果设置为 true (默认为 false),则编码的值中不会包括 narratives。

false

布尔值

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat