19.6. Spring Boot Auto-Configuration


当将 fhir 与 Spring Boot 搭配使用时,请确保使用以下 Maven 依赖项支持自动配置:

<dependency>
  <groupId>org.apache.camel.springboot</groupId>
  <artifactId>camel-fhir-starter</artifactId>
  <version>{CamelSBProjectVersion}</version>
  <!-- Use your Camel Spring Boot version -->
</dependency>

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

Name描述默认类型

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,这意味着在消费者尝试获取传入的消息时发生任何异常,或像这样一样处理,消息现在将被作为消息进行处理,并由路由 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 和路由在启动期间启动,否则在启动期间出现问题,并导致路由启动失败。通过将这个启动延迟到 lazy 后,可以在通过 Camel 的路由错误处理程序路由消息期间处理启动失败。注意在处理第一个消息时,创建并启动制作者可能花费较少的时间,从而延长处理的总处理时间。

false

布尔值

camel.component.fhir.log

将记录每个请求和响应。

false

布尔值

camel.component.fhir.password

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

 

字符串

camel.component.fhir.pretty-print

用户印刷所有请求。

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 标头。例如:用于数据格式到 XML 的 application/xml,或数据格式到 JSON 的 application/json。

true

布尔值

camel.dataformat.fhirjson.dont-encode-elements

如果提供,指定不应编码的元素。此字段的有效值包括: 耐心 - Don't en patient 以及其所有子人的 Patient.name - Don 对病人的名称 Patient.name.family - Don' encode the patient 的家族名称 .text - Don't 对任何资源上的文本元素进行编码(只有第一个位置可以包括通配符)DS2 备注: 请注意,包括 Patient.meta 的值(如 Patient.meta)可用于 DSTU2 解析器,但 meta 上带有子元素的值(如 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 的名称 Patient.name.family -Encode only the patient name .text - Encode 是任何资源上的文本元素(只有第一个位置可能包含通配符)---这是特殊字段,这种特殊字段是特殊的字段。

 

Set

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

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

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,但 outer/包含 ID 将不会有 ID。

false

布尔值

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

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

false

布尔值

camel.dataformat.fhirjson.pretty-print

设置 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 标头。例如:用于数据格式到 XML 的 application/xml,或数据格式到 JSON 的 application/json。

true

布尔值

camel.dataformat.fhirxml.dont-encode-elements

如果提供,指定不应编码的元素。此字段的有效值包括: 耐心 - Don't en patient 以及其所有子人的 Patient.name - Don 对病人的名称 Patient.name.family - Don' encode the patient 的家族名称 .text - Don't 对任何资源上的文本元素进行编码(只有第一个位置可以包括通配符)DS2 备注: 请注意,包括 Patient.meta 的值(如 Patient.meta)可用于 DSTU2 解析器,但 meta 上带有子元素的值(如 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 的名称 Patient.name.family -Encode only the patient name .text - Encode 是任何资源上的文本元素(只有第一个位置可能包含通配符)---这是特殊字段,这种特殊字段是特殊的字段。

 

Set

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

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

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,但 outer/包含 ID 将不会有 ID。

false

布尔值

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

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

false

布尔值

camel.dataformat.fhirxml.pretty-print

设置 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 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

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

© 2024 Red Hat, Inc.