Red Hat Fuse 7.5 发行注记
Red Hat Fuse 的新内容
fuse-docs-support@redhat.com
摘要
第 1 章 Fuse 7.5 产品概述
1.1. Fuse 分发
Fuse 7.5 以三种不同的发行版的形式提供,如下所示:
- Fuse 独立
在多个操作系统上支持的 Fuse 的经典分发。以下容器类型支持以下发行版本:
- Apache Karaf
- JBoss Enterprise Application Platform (EAP)
- Spring Boot
- OpenShift 上的 Fuse
在 OpenShift 上运行集成应用程序的 Fuse 发行版(在 Red Hat Enterprise Linux 操作系统上支持)。在这种情况下,支持的容器类型以 docker 格式的容器镜像的形式提供:
- Java 镜像(用于 Spring Boot)
- Apache Karaf 镜像
- JBoss EAP 镜像
- Fuse Online
使用基于浏览器的 UI 访问简化的工作流,适用于非专家集成的 Fuse 发行版。此发行版可用于以下类型的部署:
- 预安装在 OpenShift Online Professional 层
- 在 Red Hat Managed Integration 集群中
- 用于在内部 OpenShift 集群上安装
1.2. 新功能
Fuse 7.5 包括多个主要组件升级和大量新功能。详情请查看每个 Fuse 发行版本 的新功能 部分:
1.3. 支持的配置
有关版本 7.5 中支持的配置、标准和组件的详情,请查看以下客户门户网站文章:
第 2 章 Fuse Online
Fuse Online 提供了一个 Web 浏览器界面,让企业专家能够在不编写代码的情况下集成两个或多个不同应用程序或服务。它还提供一些功能,允许在复杂用例需要时添加代码。
Fuse Online 在 OpenShift 上作为使用 Apache Camel 的 Spring Boot 应用程序运行集成。作为技术预览功能,Camel K 作为一个额外的运行时提供。
2.1. 关于 Fuse 在线发行版本
Fuse Online 是红帽基于 Web 的集成平台。Syndesis 是 Fuse Online 的开源项目。Fuse Online 在这些 OpenShift 环境中运行:
主机环境 | 安装 |
OpenShift Online | 红帽在红帽基础架构上安装并调配 Fuse Online。 |
OpenShift Container Platform | 客户安装和管理。 |
2.2. Fuse Online 7.5 中的新功能
Fuse Online 7.5 提供以下新功能:
现在支持以下连接器(之前版本中的技术预览功能):
定义 API 供应商集成操作的 OpenAPI 文档现在可以为每个操作指定可能的返回代码。当您添加到该操作的流中时,您可以将每个可能的连接错误映射到其中一个返回代码。
现在支持条件流。这在以前的版本中是一个技术预览功能。
您可以将 条件流 步骤添加到简单集成的流中,或添加到 API 供应商集成操作流中。当您添加 Conditional Flows 步骤时,您可以指定一个或多个集成条件来在运行时评估集成数据。对于每个条件,您可以创建一个流,它具有相同的连接和步骤,您可以将其添加到简单集成。这可让您创建一个集成,根据集成运行的数据决定其执行路径。当您添加 Conditional Flows 步骤时,您决定是否使用基本的条件表达式构建器,该构建器适用于大多数集成,或者高级表达式构建器,可让您在 Camel Simple Language 中指定条件表达式。
2.3. Fuse Online 7.5 的变化
Fuse Online 7.5 更改 Fuse Online 7.4 功能,如下所示:
对数据映射程序的更改:
- 在从多个源字段到一个目标字段的映射中,您现在可以将 以下转换应用到源字段之一:Add,Average,Concatenate,Contains ,Count,Divide,Format,Item At,Maximum, Minimum ,Minimum,Multiply, Subct.
- 从集合字段映射到非集合字段现在串联源值,并在 target 字段中插入结果。在以前的版本中,只有集合中的最后一个值映射到 target 字段。要更改默认的串联行为,您可以对 source 字段应用转换,而不是 Concatenate。
- 从非集合字段映射到集合字段现在将源值分成分隔符,并为每个分割值创建一个 collection 元素。在以前的版本中,目标集合始终仅包含一个元素。
如果您在内部的 OpenShift Container Platform (OCP)上运行 Fuse Online,则功能更改包括:
-
CONTROLLERS_EXPOSE_VIA3SCALE
服务器环境变量的名称已改为OPENSHIFT_MANAGEMENT_URL_FOR3SCALE
。当为特定 OpenShift 项目设置了OPENSHIFT_MANAGEMENT_URL_FOR3SCALE
变量时,默认行为是该项目中的 API 提供程序集成的 API API 可通过红帽 3scale 发现。 - 对于 API 供应商集成,您现在可以为特定集成禁用发现。在发布集成后,您将在 Fuse 在线集成概述中完成此操作。
- 标记特定环境集成的公共 REST API 端点现在需要现有的环境标签。也就是说,您必须先创建 environment 标签,然后才能将其分配给集成。在以前的版本中,如果端点尚不存在,则端点会创建一个环境标签。
- 您无法再配置 OpenShift,以便 Fuse Online 用户绕过提示 Fuse Online 授权访问用户的 OpenShift 帐户的页面。
-
2.4. 升级在 OpenShift Online 上运行的现有集成
发布 Fuse 7.5 时,OpenShift Online 上的 Fuse Online 基础架构会自动升级。在基础架构升级过程中,在 OpenShift Online 上运行的任何现有集成都会在升级过程中和之后继续运行。但是,现有集成仍会使用 旧版本的 Fuse 库和依赖项运行。
收到一封电子邮件信息,可让您知道 Fuse Online 基础架构已升级至新版本,通过重新发布您的集成来(不仅仅是重新启动它们)来升级您的现有集成。尽快执行此操作。
要重新发布您的集成,请在 Fuse Online 环境中,在左侧导航面板中点 Integrations。然后对每个集成执行以下操作:
- 在集成条目右侧,点 并选择 Edit。
- 当 Fuse Online 显示用于编辑的集成时,单击右上角的 Publish。
发布会强制重新构建使用最新的 Fuse 在线依赖项。
如果集成的任何元素有较新的依赖项需要更新,Fuse Online 用户界面会显示一个警告。
2.5. 重要备注
Fuse Online 发行版的 Fuse 7.5 发行版的重要备注:
- Fuse Online 安装过程假定容器 registry 是内部的。Fuse Online 不支持或测试在断开连接的环境中使用外部容器 registry、自定义 registry 或 registry。
- 将 Fuse Online 7.4 升级到 7.5.1 可以正常工作。由于以下问题,将 Fuse Online 7.4 升级到 7.5 无法正常工作: ENTESB-12327 和 ENTESB-12328。这些问题在 Fuse Online 7.5.1 中解决。
- 在这个发行版本中,到 Kafka 的连接不支持 SSL。预计会在以后的版本中有所变化。
- Fuse Online 帐户仅限于一次可以运行的特定数量集成。详情请查看定价计划。如果您使用 Fuse Online 评估帐户,则一次只能运行一个集成。
- 上传到 Fuse Online 的 OpenAPI 模式可能无法定义输入/输出类型。当 Fuse Online 从 OpenAPI 模式创建自定义 API 客户端时,它没有指定输入/输出类型,则无法创建集成数据将集成数据映射到 API 客户端处理的字段或来自 API 客户端处理的字段。如果集成需要数据映射到自定义 API,那么当您上传 OpenAPI 模式时,点 Review/Edit 以打开 API Designer,它是一个 API 编辑工具,并添加输入/输出类型规格。
- 用于自定义 API 客户端连接器或 API 供应商集成的 OpenAPI 文档无法具有 cyclic 模式引用。例如,指定请求或响应正文的 JSON 模式无法作为整体引用,也无法通过任意数量的中间模式引用其自身的任何部分。
2.6. 获取技术支持
要获得技术支持,请在 Fuse Online 中,在左侧导航面板中点 Support。使用 Support 页面下载所有集成或您选择的一个或多个集成的诊断信息。该页面还提供打开支持问题单的链接,并提供您下载的诊断信息。
2.7. 技术预览功能
此发行版本包括以下列出的技术预览功能。
红帽产品服务级别协议(SLA)不支持技术预览功能,且其功能可能并不完善,红帽不建议在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。如需更多信息,请参阅红帽技术预览功能支持范围。
数据虚拟化
对于在 OpenShift Container Platform on-site 上运行的 Fuse Online 开发环境,数据虚拟化是一个容器原生虚拟化。它集成了来自多个异构来源的数据,包括关系数据库、文件、Web 服务和 SaaS 存储库。在 Fuse Online 中,开发人员可以创建虚拟数据库镜像,以定义其源数据的自定义逻辑视图。然后,他们可以在 OpenShift 上部署该镜像。应用通过标准 OData、REST 或 JDBC 接口连接到虚拟数据库,并且可以在所有数据源上运行 SQL 查询,即使不支持 SQL 的用户也是如此。
要启用数据虚拟化,请参阅在 OCP 上安装 Fuse Online。
连接器:
在数据映射程序中,您可以指定一个条件表达式并将其应用到一个数据映射。例如,一个条件表达式可以指定 source 字段的评估,以及如何填充 target 字段(如果 source 字段为空)。您可以指定的一组有限表达式与 Microsoft Excel 表达式类似。在本发行版本中,条件表达式无法引用是一个集合的字段。
- Camel K 作为一个额外的运行时提供。
对于使用 OAuth 的 REST API 客户端,当您创建 API 客户端连接器时,您可以更改从该连接器创建的连接的默认 OAuth2 行为。对 OpenAPI 规格的 Fuse 在线供应商扩展支持以下内容:
- 将客户端凭据作为参数提供。
- 根据 HTTP 响应状态代码获取新的访问令牌。
第 3 章 OpenShift 上的 Fuse
OpenShift 上的 Fuse 可让您在 OpenShift Container Platform 上部署 Fuse 应用程序。
3.1. 支持的 OpenShift 版本
OpenShift 上的 Fuse 现在支持 OpenShift Container Platform 4.1。有关 OpenShift 上 Fuse 支持的 OpenShift Container Platform 版本(或版本)的详情,请查看 支持的配置页面。
3.2. 支持的镜像
OpenShift 上的 Fuse 提供以下 Docker 格式的镜像:
-
fuse7/fuse-java-openshift
mvapichSpring Boot -
fuse7/fuse-karaf-openshift
— Apache Karaf -
fuse7/fuse-eap-openshift
mvapich-wagonRed Hat JBoss Enterprise Application Platform -
fuse7/fuse-console
criu-wagonFuse 控制台 -
fuse7/fuse-console-operator
wagon-wagonFuse console operator -
fuse7/fuse-apicurito
mvapich-PROFILEApicurito REST API 编辑器 -
fuse7/fuse-apicurito-generator
criu-PROFILEApicurito REST 应用程序生成器 -
fuse7-tech-preview/fuse-apicurito-operator
mvapich-mvapichAPI Designer Operator
3.3. Fuse 7.5 中的新功能
OpenShift 上的 Fuse 在版本 7.5 中提供以下新功能:
- OpenShift 现在支持 Spring Boot 2 运行时。
- OpenShift 上的 Fuse 现在支持 OpenShift 4.1。
Fuse Console operator:
Fuse Console operator 简化了在 OpenShift 上安装、升级和卸载 Fuse 控制台的步骤。有关如何使用 Fuse Console 操作器的详情,请参阅设置 Fuse 控制台。
注意为了在 Fuse 控制台代理和 Jolokia 代理之间保持连接,需要生成、签署和部署客户端证书。这必须在 OCP 4.x 上安装 Fuse 控制台后手动完成。
3.4. 技术预览功能
OpenShift 上的 Fuse 的以下功能 只是技术预览,在 Fuse 7.5 中不支持:
- Data Virtualization
- Red Hat Data Virtualization 是一个容器原生虚拟化服务,它基于 Teiid 数据虚拟化项目。Red Hat Data Virtualization 结合了多个异构来源的数据,如相关数据库、文件、Web 服务和 SaaS 存储库。如需了解更多详细信息,请参阅 数据集成。
- API Designer operator 安装
- 您可以从 OpenShift Container Platform 4.1 的 Operator Hub 安装 API Designer Operator。API Designer 操作器允许您为 OpenShift 上的 Fuse 访问 API Designer 操作器的技术预览。API Designer 操作器简化了在 OpenShift 上安装、升级和卸载 API 设计程序的步骤。有关如何安装 API Designer 操作器的详情,请参阅在 OpenShift 4.x 服务器上安装 Fuse Imagestreams 和 Temaplates。
不支持它安装的 API Designer operator 或 API Designer 实例。此技术预览功能不适用于在生产环境中进行测试。
3.5. 重要备注
在 OpenShift 发行版上的 Fuse 7.5 发行版本的重要备注:
- Container Development Kit (CDK) 3.10 是 OpenShift 3.11 上 Red Hat Fuse 7.5 的建议版本。
我们建议开发人员使用 CDK 3.10 来试用 OpenShift 3.11 上的应用程序。CDK 不适用于 OpenShift 4。
注意CDK 仅作为开发人员提供,不是受支持的 OpenShift 发行版。
第 4 章 Fuse Standalone
4.1. 支持的容器
以下运行时容器支持 Fuse 独立 7.5:
- Spring Boot 1 和 Spring Boot 2 (standalone)
- Apache Karaf
- Red Hat JBoss Enterprise Application Platform (JBoss EAP)
4.2. Fuse 7.5 中的新功能
7.5 版本中 Fuse 独立的主要新功能是:
- 现在,您可以升级 EAP,而无需重新安装
- 在以前的版本中,在 Fuse 7.x 中,您需要重新安装 EAP 来升级需要重新部署的。在 Fuse 7.5 中,您可以应用热补丁来成功升级。请参阅"在 JBoss EAP 上安装 JBoss EAP"部分中如何在 JBoss EAP 上安装 Fuse 修补程序。
4.3. 技术预览功能
Fuse 独立的以下功能 只是技术预览,在 Fuse 7.5 中不支持:
- saga EIP
- Saga Enterprise Integration Pattern (EIP)是一个技术预览功能,仅具有 In-Memory Saga 服务(不适用于生产环境)。不支持 LRA Saga 服务。如需了解更多详细信息,请参阅"Apache Camel 开发指南"中的 Saga EIP 部分。
4.3.1. Fuse Tooling 支持 Apache Camel
Fuse 工具为 Camel 应用程序开发提供了跨平台、跨 IDE 方法,支持 Visual Studio Code、Eclipse IDE 和 Eclipse Che 的 Apache Camel 语言支持扩展或插件。
对于 Visual Studio Code,您还可以添加向 Camel Rest DSL 支持提供 WSDL 的扩展。
注意: 这些功能已默认包含在用于 Red Hat CodeReady Studio 的 Fuse Tooling 中。
Visual Studio Code 功能
Apache Camel 扩展的语言支持为 Camel URI 提供以下功能:
对于 XML DSL 和 Java DSL:
- 当您输入时,编辑器为 Camel 组件、属性和属性值列表提供代码完成。
- 将鼠标悬停在 Camel 组件上时,编辑器显示组件的简短描述(来自 Apache Camel 组件参考)。
- 编辑文件时,编辑器对 Camel 代码执行 Apache Camel 验证检查。
仅限 XML DSL:
- 您可以在 VS Code outline 面板中导航到 Camel 上下文和路由,并在 File 导航面板中的 Go > ; Go to Symbol 中 进入 Camel 上下文和路由。
-
当您输入时,编辑器为直接 ID、
直接
虚拟机
SEDA
组件提供代码完成。 -
您可以在所有打开的 Camel 文件中找到
直接
组件的引用。和直接
虚拟机
WSDL 2 Camel Rest DSL 扩展(wsdl2rest 实施)提供 WSDL 到 Camel Rest DSL 支持。通过指定现有的 WSDL 文件,您可以使用此扩展来生成 Camel Rest DSL + CXF 解决方案,以进行 REST 风格的访问。WSDL 文件可以位于本地文件系统上,或者从可访问的 Web URL 上。
要访问 Apache Camel 和 WSDL 到 Camel Rest DSL 功能的 语言支持,您可以添加一个或多个扩展。
Apache Camel 扩展包安装 以下 VS Code 扩展:
另外,您可以单独安装扩展。
如需了解更多详细信息,请参阅以下 readme 文件:
- Apache Camel 扩展包的 README
- Visual Studio Code 的 Apache Camel 语言服务器协议的 README
- 适用于 WSDL 到 Camel Rest DSL的 README
Eclipse IDE 功能
Apache Camel Eclipse 插件的语言支持为 Camel URI 提供以下功能:
在 XML DSL 和 Java DSL 的通用 Eclipse 文本编辑器中:当键入时,编辑器为 Camel 组件、属性和属性值列表提供代码完成。* 当您将鼠标悬停在 Camel 组件上时,编辑器会显示组件的简短描述(来自 Apache Camel 组件参考)。
使用 Eclipse XML 或 Java 编辑器时,只提供自动完成功能。
要访问 Apache Camel 功能的语言支持,您可以从 Eclipse Marketplace 安装 Eclipse 插件。详情请查看 Eclipse IDE 的 Apache Camel 语言服务器协议的 readme 文件。
Eclipse Che 功能
Eclipse Che 7 的 Apache Camel 插件的语言支持 仅为 Camel URI 和 XML DSL 提供功能。
- 当您输入时,编辑器为 Camel 组件、属性和属性值列表提供代码完成。
- 将鼠标悬停在 Camel 组件上时,编辑器显示组件的简短描述(来自 Apache Camel 组件参考)。
- 保存文件时,编辑器对 Camel 代码执行 Apache Camel 验证检查。
要为 Eclipse Che 激活此插件,您需要编辑工作区的配置。有关如何激活它的详情,请查看 此红帽开发人员博客条目。
4.4. Fuse 7.5 的 BOM 文件
要将 Maven 项目配置为使用支持的 Fuse 7.5 工件,请使用本节中记录的 BOM 版本。
4.4.1. BOM 文件
要升级 Fuse 独立应用程序以使用 7.5 依赖项,请编辑 Maven pom.xml
并更改下表中列出的 BOM 和 Maven 插件的版本:
表 4.1. 使用 BOM 的 7.5 的 Maven BOM 和插件版本
容器类型 | Maven BOM 或 Plugin Artifact groupId/artifactId | Fuse 7.5 的版本 |
---|---|---|
Spring Boot 1 |
|
|
|
| |
|
| |
Spring Boot 2 |
|
|
|
| |
|
| |
Apache Karaf |
|
|
|
| |
JBoss EAP |
|
|
有关使用 BOM 的详情,请参阅 Fuse 迁移指南。
4.5. 重要备注
Fuse standalone distribution 的 Fuse 7.5 发行版本的重要备注:
- EAP 上的 Fuse 升级至使用 JBoss EAP 7.2.3 (从 JBoss EAP 7.2)
- Fuse 7.5 版本现在在 JBoss Enterprise Application Platform (EAP) 7.2.3 容器上运行(在之前的 Fuse 版本中从 JBoss EAP 7.2 升级)。如需了解更多详细信息,请参阅 JBoss EAP 7.2.0 发行注记。
- ENTESB-10923: camel-linkedin quickstart 无法正常工作
在 Fuse 7.5 中删除了
camel-linkedin
组件。重要虽然从 Fuse 7.5 中删除,但
camel-linkedin
组件可能会在以后的发行版本中恢复。
第 5 章 弃用和删除的功能
如果您需要任何帮助,或者对 Fuse 7 中即将推出的更改有任何疑问,请联系 support@redhat.com。
5.1. 已弃用
Fuse 7.5 中已弃用以下功能,并可能在以后的版本中删除:
- 在 Camel 应用程序中弃用了 PHP、Python 和 Ruby 脚本语言
- 自 Fuse 7.4 起,PHP、Python 和 Ruby 脚本语言在 Camel 应用程序中被弃用,并将在以后的版本中删除。从 Camel 2.19 开始,Camel 社区已弃用 PHP、Python 和 Ruby (请参阅 CAMEL-10973)。这适用于所有 Fuse 容器类型:Apache Karaf、JBoss EAP 和 Spring Boot。
- HP-UX OS 已被弃用
- HP-UX 操作系统已被弃用,因为 Fuse 7.2 和对此操作系统的支持可能会在以后的 Fuse 发行版本中删除。特别是,JBoss EAP 7.2 容器已丢弃了对 HP-UX 的支持,因此任何在 JBoss EAP 7.2 上运行的 Fuse 版本都不支持在 HP-UX 上。
- Camel MQTT 组件已弃用
- Camel MQTT 组件在 Fuse 7.0 中已弃用,并将在以后的 Fuse 发行版本中删除。您可以使用 Camel Paho 组件,它使用流行的 Eclipse Paho 库来支持 MQTT 消息传递协议。
- 除了 Linux 外,Camel LevelDB 组件在所有操作系统中都已弃用
-
自 Fuse 6.3 起,Camel LevelDB (
camel-leveldb
)组件在所有操作系统上已被弃用,但 Red Hat Enterprise Linux 除外。未来,Camel LevelDB 组件仅在 Red Hat Enterprise Linux 上被支持。 - Camel SJMS 组件的 BatchMessage 类已弃用
- Camel SJMS 组件的 BatchMessage 类在 Fuse 7 中被弃用(自 Apache Camel 2.17 起弃用),并可能从未来版本的 Apache Camel 和 Fuse 中删除。
5.2. 在 Fuse 7.5 中删除
Fuse 7.5 中删除了以下功能:
- 7.5 中丢弃了对与 MS SQL Server 2014 集成的支持
- MS SQL Server 2014 不再经过测试并支持与 Fuse 7.5 集成。我们建议您使用 MS SQL Server 最新版本,而不是 iwl-setuptools,例如,MS SQL Server 2016 或 2017。
- Camel LinkedIn 组件已在 7.5 中删除
在 Fuse 7.5 中删除了
camel-linkedin
组件。重要虽然从 Fuse 7.5 中删除,但
camel-linkedin
组件可能会在以后的发行版本中恢复。
5.3. 在 Fuse 7.3 中删除
Fuse 7.3 中删除了以下功能:
- Camel YQL 组件已在 7.3 中删除
- Camel YQL 组件已在 Fuse 7.3 中删除。
- 在 7.3 中,openjpa 和 OpenzFCP3 Karaf 功能已列入黑名单
-
在 7.3 中,
openjpa
功能和openjpa3
功能已列入黑名单(删除)。对于 Java Persistence 架构(diag)实现,请使用支持的hibernate
功能。 - 在 7.3 中已放入了 camel-jetty Karaf 功能
-
在 7.3 中,
camel-jetty
功能已从 Apache Karaf 容器中列入黑名单(删除),因为它使用 Jetty 8。改为使用camel-jetty9
功能。 - Pax-jms-oracleaq Karaf 功能已列入黑名单在 7.3 中
-
pax-jms-oracleaq
功能已列入黑名单(删除)在 7.3 中的 Apache Karaf 容器中,因为它需要第三方非免费 Oracle AQ 库。 - 在 7.3 中,camel-elasticsearch 组件已从 EAP 上的 Fuse 中删除(Wildfly Camel)
-
camel-elasticsearch
组件已从 7.3 中的 EAP 上的 Fuse (Wildfly Camel)中删除。改为使用较新的camel-elasticsearch-rest
组件。
5.4. 在 Fuse 7.2 中删除
Fuse 7.2 中删除了以下功能:
- Camel XMLRPC 组件已在 7.2 中删除
- Camel XMLRPC 组件已在 Fuse 7.2 中删除。
- Camel Netty 组件已在 7.2 中删除
- Camel Netty 组件已在 Fuse 7.2 中删除。建议您改用 Camel Netty4 组件。
5.5. 在 Fuse 7.0 中删除
Fuse 7.0 中删除了以下功能:
- 7.0 中删除了对 Red Hat JBoss Operations Network (JON)的支持
- 自 Fuse 7.0 起,Flytron 上的 Fuse 不再支持 JON,不再提供用于与 JON 运行时集成的 JON 插件。
- 7.0 中删除了嵌入的 ActiveMQ 代理
- 自 Fuse 7.0 起,Fleti 上的 Fuse 不再提供嵌入式 ActiveMQ Broker。客户应直接连接到受支持的远程代理。有关我们支持的代理的更多信息,请参阅 Red Hat Fuse 支持的配置 页面中的 "支持消息传递提供程序"部分。
- 7.0 中删除了 Fuse 集成包
- 对运行规则和流程的支持由 Red Hat JBoss BPM Suite 和 Red Hat JBoss BRMS 附带的组件提供。
- 7.0 中已删除用于子容器管理的 Karaf 控制台命令
自 Fuse 7.0 起,不支持 用于子容器管理的 Karaf 控制台命令。也就是说,不支持以
instance:
(Karaf 4.x 语法)和前缀为admin:
(Karaf 2.x 语法)的控制台命令。注意在 Fuse 7.0 GA 版本中,
instance:
命令不会列入黑名单。这是个已知问题。- 7.0 中已删除了 SwitchYard
- 自 Fuse 7.0 起,drad 已被删除,您应该直接使用 Apache Camel。如需更多信息,请参阅Swoning Support Plan after Releasing Fuse 7。
- 7.0 中删除了对 Fabric8 1.x 的支持
自 Fuse 7.0 起,Fabra8 v1 已被 OpenShift 上的 Fuse (以前为 Fuse 集成服务)替代,其中包括 Fabric8 v2 技术的组件。OpenShift 上的 Fuse 提供了一组工具和 Docker 格式镜像,支持 OpenShift 中集成微服务的开发、部署和管理。
虽然 OpenShift 上的 Fuse 具有不同的架构,但它满足 Fabric8 v1 提供的相同调配、自动化、中央配置和管理要求。如需更多信息,请参阅 OpenShift 上的 Fuse 指南。
- 7.0 中删除了 Google App Engine 的 Camel 组件
-
Fuse 7.0 中删除了 Google App Engine 的 Camel 组件(
camel-gae
)。 - 在 7.0 中删除了 Camel jBPM 组件
-
Camel jBPM 组件(
camel-jbpm
)已在 Fuse 7.0 中删除。 - 7.0 中删除了将 Fuse 安装为服务的 Tanuki 的打包程序
-
在 Fuse 7.0 中删除了基于 Tanuki 的 wrapper 脚本,使用
wrapper:install
Karaf console command iwl-wagon for 将 Fuse 作为服务安装。要将 Apache Karaf 容器安装为一个服务,建议您改为使用bin/contrib
目录中的新的karaf-service indices.sh
脚本。 - 在 7.0 中删除了 Smooks
- 自 Fuse 7.0 起,Smooks 组件已删除。
- 在 7.0 中删除了 puppetlabs
- VirtIO (基于 Riftsaw 项目)已从 Fuse 7.0 中删除。如果您当前正在使用 mvapich,建议您考虑迁移到红帽 JBoss BPM 套件。
- 7.0 中删除了设计时间监管
- Design Time Governance 组件已在 7.0 中删除。
- 7.0 中删除了运行时监管
- 自 Fuse 7.0 起,删除了 Runtime Governance (RTGov)组件。
- 在 7.0 中删除 s-RAMP
- Fuse 7.0 中删除了 SOA Repository Artifact Model and Protocol (S-RAMP)组件。
- bin/patch 脚本已在 7.0 中删除
-
在 Fuse 7.0 中删除了
bin/patch
脚本(bin\patch.bat
on Windows O/S)。 - 7.0 不支持 Spring Dynamic Modules (Spring-DM)
- Fuse 7.0 不支持 Spring XML 与 Apache Karaf 中的 OSGi 服务层集成,您应该改为使用 Blueprint 框架。使用 Blueprint XML 不会阻止您使用 Spring 框架中的 Java 库:最新版本的 Spring 与 Blueprint 兼容。
- 7.0 不支持 Apache Open JPA
- Fuse7.0 不支持 Java Persistence API (JPA)的 Apache Open JPA 实现。建议您使用 Hibernate 实现。
5.6. 在 Fuse 7.0 中替换
Fuse 7.0 中替换了以下功能:
第 6 章 Fuse 7.5 中不支持的功能
Red Hat Fuse 7.5 不支持以下功能。
- 不支持 Apache Karaf EclipseLink 功能
- Fuse 不支持 Apache Karaf EclipseLink 功能,因为此功能依赖于 JPA 2.2,而 Fuse 7.2 的 Karaf 容器与 JPA 2.1 一致。
- 不支持 Apache Aries Blueprint Web 模块
- Fuse 不支持 Apache Aries Blueprint Web 模块。在 Apache Camel 的社区版中存在一个包含 Blueprint Web 的示例(作为单独的下载提供) 并不意味着 Fuse 中支持此功能。
- Apache Camel on Apache Karaf 不支持 PHP 脚本语言
- Apache Karaf 容器上的 Camel 应用程序 不支持 PHP 脚本语言,因为 PHP 没有适用于 PHP 的 OSGi 捆绑包。PHP 脚本语言在 JBoss EAP 容器和 Spring Boot 容器中的 Camel 应用程序中被弃用。
- Apache Camel on Apache Karaf 不支持 Python 脚本语言
- Apache Karaf 容器上的 Camel 应用程序 不支持 Python 脚本语言,因为 Python 没有适用于 Python 的 OSGi 捆绑包。Python 脚本语言在 JBoss EAP 容器和 Spring Boot 容器中的 Camel 应用程序中被弃用。
第 7 章 已知问题
以下小节描述了版本 7.5 中的已知问题。
7.1. CVE 安全漏洞
作为中间件集成平台,Fuse 可能会与大量第三方组件集成。无法始终排除 Fuse 的一些第三方依赖项可能会存在安全漏洞。本节记录了影响 Fuse 7.5 第三方依赖项的已知安全漏洞。
- ENTESB-12489 CVE-2019-9827 - Amazon Web Services 上的 Fuse 控制台独立
-
由于安全问题,您不应将独立 Fuse 应用程序部署到 Amazon Web Services (AWS)。这个限制适用于所有支持的独立环境(Spring Boot 1.x 和 2.x、4.X、Red Hat JBoss Enterprise Application Platform)。如果要在 AWS 上部署 Fuse 控制台独立,强烈建议您升级到 Fuse 7.7 或更高版本,并通过将
hawtio.disableProxy
系统属性设置为true
来禁用 Fuse Console 的代理 servlet。 - CVE-2017-12629 Solr/Lucene -security 绕过访问敏感数据 - CVE-2017-12629
Apache Solr 是一个流行的开源搜索平台,它使用 Apache Lucene 搜索引擎。如果您的应用程序使用 Apache Solr 与 Apache Lucene (例如,使用 Camel Solr 组件)的 Apache Solr 的组合,则可能会受此安全漏洞的影响。有关此漏洞的详情以及要采取的缓解方案,请参阅链接的安全公告。
注意Fuse 运行时 不直接 使用 Apache Solr 或 Apache Lucene。只有在集成应用程序上下文中同时使用 Apache Solr 和 Apache Lucene 时(例如,使用 Camel Solr 组件时),才会出现安全风险。
- 与 jackson-databind 安全漏洞相关的多个 CVE
使用 FasterXML
jackson-databind
库的应用程序通过取消序列化 JSON 内容来实例化 Java 对象,可能会受到 远程代码执行攻击的影响。但是,这个漏洞不是自动的,如果您进行适当的缓解方案步骤,可以避免这样做。在攻击可能前,必须至少满足以下先决条件:
您已启用了 polymorphic 类型处理,以便在
jackson-databind
中对 JSON 内容进行反序列化处理。在 Jackson JSON 中,有两种启用 polymorphic 类型处理的方法:-
使用
@JsonTypeInfo
和@JsonSubTypes
注释的组合。 -
通过调用
ObjectMapper.enableDefaultTyping ()
方法。这个选项特别危险,因为它可以有效地全局启用多态输入。
-
使用
您的 Java 类路径中有一个或多个 gadget 类,这些类尚未由当前版本
jackson-databind
列入黑名单。gadget 类被定义为执行敏感(可能被利用)操作的任何类,作为执行构造器或 setter 方法(这是可在反序列化过程中调用的方法)的副作用。Jackson JSON 库维护的 gadget 黑名单是针对远程代码执行漏洞的 defence 的最后一行。它存在大量 gadget 类,它解释了为什么有多个与
jackson-databind
漏洞相关的 CVE。有不同的 CVE 与不同类型的小工具类相关。
如果您需要在应用程序中使用
jackson-databind
库,您可以采取最重要的措施来降低风险: 避免 Jackson JSON 中的 polymorphic 类型处理,且无帐户应调用ObjectMapper.enableDefaultTyping ()
方法。
7.2. Fuse Online
Fuse Online 发行版有以下已知问题:
- 因为缺少 komodo 镜像,ENTESB-12327 Upgrade 7.4 → 7.5 stuck
- 当从 Fuse Online 7.4 升级到 7.5 时,升级过程会因为缺少镜像而卡住将 komodo-server pod 扩展到 1。7.5.1 中的 RESOLVED。
- ENTESB-12328 Postgres 从 9.5 升级到 9.6 将不会使用旧数据 dir
- 当从 Fuse Online 7.4 升级到 7.5 时,在尝试将 Postgres 从版本 9.5 升级到 9.6 时,升级过程会失败。7.5.1 中的 RESOLVED。
- ENTESB-12175 Camel-k 集成即使在 UI 中删除时也会保持部署
-
在 Fuse 7.5 中,如果启用了 Camel K,并且删除了 UI 中的集成,Camel K 集成将继续运行,但不显示在 Fuse Online 中。要临时解决这个问题,首先停止 UI 中的集成,然后使用
kamel delete
命令删除它。 - 在 camel-k 上运行的 ENTESB-12174 API Provider 具有空参数
- 在 Fuse 7.5 中,如果启用了 Camel K,并且您创建一个使用查询参数的 API Provider 操作,则参数为空。
- ENTESB-11780 E7:使用 operatorhub (OCP4)从 7.4 升级
- 您不能使用 OperatorHub 将 Fuse Online 安装从 7.4 升级到 7.5。您需要对 Fuse Online 7.5 进行干净安装,从旧的 7.4 安装中手动导出集成,然后将集成导入到新的 7.5 安装中。这个问题将在 Fuse 7.6 中解决
- 升级后,ENTESB-12040 Komodo 服务器和 syndesis-dv 存在
-
在将 Fuse Online 安装从 7.4 升级到 7.5 后,会同时有一个
komodo-server
pod 和一个syndesis-dv
pod。komodo-server
pod 冗余,可以缩减为0。
- ENTESB-11633 增加 SQL 查询的默认时间
- 在 Fuse Online 中,如果 SQL 查询需要很长时间才能完成(例如,应用到大型表的查询),则 SQL 查询可能会失败。Fuse Online 中 SQL 查询的默认超时时间为 15 秒。这个问题将在 Fuse 7.6 中解决。
- ENTESB-11407 [1.7.8] 在小负载后没有活动(约 80000 个消息在 20 小时内)
性能测试显示,活动跟踪逻辑可能会导致 Fuse 在线用来跟踪活动的数据库中大量死元组。这个问题会在需要从数据库读取的任何操作中一般减慢,最重要的是从 UI 访问集成列表或刷新集成活动。这个问题的解决方法是通过发出 SQL 声明 VAC
UM FULL ANALYSE jsondb
来执行数据库的定期维护。以下是执行此任务的步骤:
# check to see if there are dead tuples (not vacuumed) $ oc exec -c postgresql $(oc get pod -l 'syndesis.io/component=syndesis-db' --no-headers=true -o=custom-columns=x:.metadata.name) -- bash -c "echo SELECT schemaname, relname, n_live_tup, n_dead_tup, last_autovacuum FROM pg_stat_all_tables WHERE relname = \'jsondb\'|psql -U syndesis" schemaname | relname | n_live_tup | n_dead_tup | last_autovacuum ------------+---------+------------+------------+------------------------------- public | jsondb | 26893 | 491210 | 2019-07-17 09:26:51.264029+00 (1 row) # since there are 491210 dead tuples, perform the following # scale down the server $ oc scale --replicas=0 dc syndesis-server # terminate all running connections $ oc exec -c postgresql $(oc get pod -l 'syndesis.io/component=syndesis-db' --no-headers=true -o=custom-columns=x:.metadata.name) -- bash -c "echo SELECT pg_terminate_backend\(a.pid\) FROM pg_locks l join pg_stat_activity a ON a.pid = l.pid WHERE l.mode = \'ExclusiveLock\' AND a.usename = \'syndesis\'|psql -U syndesis" FATAL: terminating connection due to administrator command server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. connection to server was lost command terminated with exit code 2 # the preceding FATAL error is expected, because the statement also closes the connection psql is using # execute `VACUUM FULL ANALYSE` $ oc exec -c postgresql $(oc get pod -l 'syndesis.io/component=syndesis-db' --no-headers=true -o=custom-columns=x:.metadata.name) -- bash -c "echo VACUUM FULL ANALYSE jsondb|psql -U syndesis" VACUUM # scale up server $ oc scale --replicas=1 dc syndesis-server
- 5458 Operator 会尝试更新过时的 Syndesis 资源
当使用操作器安装 Fuse Online 时,以下错误会多次发生,但可以忽略它,因为它对安装没有显著影响:
{"level":"error","ts":1558617960.2453232,"logger":"controller","msg":"Error reconciling","action":"*action.startupAction","phase":"Starting","error":"Operation cannot be fulfilled on syndesises.syndesis.io \"app\": the object has been modified; please apply your changes to the latest version and try again","stacktrace":"github.com/syndesisio/syndesis/install/operator/vendor/github.com/go-logr/zapr.(*zapLogger).Error\n\t/go/src/github.com/syndesisio/syndesis/install/operator/vendor/github.com/go-logr/zapr/zapr.go:128\ngithub.com/syndesisio/syndesis/install/operator/pkg/controller/syndesis.(*ReconcileSyndesis).Reconcile\n\t/go/src/github.com/syndesisio/syndesis/install/operator/pkg/controller/syndesis/syndesis_controller.go:120\ngithub.com/syndesisio/syndesis/install/operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/go/src/github.com/syndesisio/syndesis/install/operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:215\ngithub.com/syndesisio/syndesis/install/operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func1\n\t/go/src/github.com/syndesisio/syndesis/install/operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:158\ngithub.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1\n\t/go/src/github.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133\ngithub.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil\n\t/go/src/github.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134\ngithub.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait.Until\n\t/go/src/github.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88"}
- ENTESB-10577 Apicurito 不支持 YAML Open API 规格文件
- 在 OpenShift 上的 Fuse 7.4 中,Apicurito 默认 以 YAML 格式生成 OpenAPI 规格文件,但无法重新导入生成的 YAML 文件。目前只能将 JSON 格式导入到 Apicurito 中。
- 698 DB Connector: SQL 解析器无法识别 LIKE 的参数
-
在包含
LIKE
关键字的 SQL 语句中(例如,DELETE FROM TODO WHERE 任务 LIKE ':#param'
),L
IKE 关键字不能与 datamapper 参数一起使用,如:#param
。
7.3. OpenShift 上的 Fuse
本节列出了影响在 OpenShift 中部署 Fuse 应用程序的问题。有关影响特定容器的问题详情,请参阅 Spring Boot、Apache Karaf 上的 Fuse 部分,以及 JBoss EAP 上的 Fuse。OpenShift 发行版上的 Fuse 有以下已知问题:
- ENTESB-12941 prometheus 无法用于 OCP 4.4
在 Fuse 7.5.0 中,与 Fuse 7.5.0 打包的 Prometheus 镜像无法在 OpenShift Container Platform (OCP) 4.4 上工作。如果您试图在 OCP 4.4 上安装 Fuse 7.5.0 Prometheus 镜像,则会出现以下错误:
error: unable to recognize no matches for kind "Deployment" in version "apps/v1beta2"
但是,这个问题不会影响 OCP 4.3 上的 Prometheus。
- ENTESB-11712 [Hawtio] 在 OSGi 中添加配置无法正常工作
- 在 OCP 3.11 上的 Fuse 7.5.0 中,在 OCP 3.11 上使用 Fuse Console (Hawtio)时,在 OCP 3.11 上使用 Fuse configuration 按钮将无法正常工作。
- ENTESB-12224 Fuse 控制台 - 选择一个容器下拉菜单
- 在 OCP 4 和 OCP 3 上的 Fuse 7.5.0 中,在通过 Fuse 控制台连接到 应用程序后,选择容器 下拉菜单的行为不可靠,有时不会显示其他部署的 Fuse 容器。
- Fuse Console operator 的 ENTESB-11131 OLM 清单
- 在 OCP 4 上的 Fuse 7.5.0 中,无法使用 Operator Hub 中的 operator 安装 Fuse 控制台(Hawtio)。
- ENTESB-12241 OSGi 页不适用于 OCP 4.1
- 在 OCP 4 上的 Fuse 7.5.0 中,对于通过 Fuse 控制台(Hawtio)监控应用程序时,在 OCP 4 上部署的应用程序无法通过 Fuse 控制台(Hawtio)监控,则无法查看 OSGi 页面。
- ENTESB-12238 [SB2] Quickstarts arquillian 测试失败
在 Fuse 7.5.0 中,一些 Spring Boot 2 快速入门(从 Maven archetypes 或 Quickstart 模板生成的)无法构建和部署到 OpenShift。以下 Spring Boot 2 Maven archetypes 会受到影响:
-
spring-boot-camel-archetype
-
spring-boot-camel-infinspan-archetype
-
spring-boot-cxf-jaxrs-archetype
-
spring-boot-cxf-jaxws-archetype
以及以下 Spring Boot 2 模板:
-
spring-boot-2-camel-template
-
spring-boot-2-camel-infinspan-template
-
spring-boot-2-cxf-jaxrs-template
-
spring-boot-2-cxf-jaxws-template
要临时解决这个问题,在为其中一个快速入门生成 Maven 项目后,编辑项目的 Maven
pom.xml
文件以添加以下依赖项:<dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>2.4.1</version> <scope>test</scope> </dependency>
-
- ENTESB-10577 Apicurito 不支持 YAML Open API 规格文件
- 在 OpenShift 上的 Fuse 7.4 中,Apicurito 默认 以 YAML 格式生成 OpenAPI 规格文件,但无法重新导入生成的 YAML 文件。目前只能将 JSON 格式导入到 Apicurito 中。
7.4. Spring Boot 上的 Fuse
Spring Boot 上的 Fuse 有以下已知问题:
- ENTESB-12137 [camel-box] 不处理 SB2
- 在 Fuse 7.5.0 发行版本中,Camel Box 组件不适用于 Spring Boot 2 容器。
7.5. Apache Karaf 上的 Fuse
Apache Karaf 上的 Fuse 有以下已知问题:
- ENTESB-12105 [camel-salesforce-quickstart] Camel salesforce quickstart 不在 Karaf 上工作
在 Fuse 7.5.0 中,如果您遵循 README for Apache Karaf
camel-salesforce
quickstart 提供的说明,则应用程序不会构建。要临时解决这个问题,而不是使用命令mvn -Pgenerate-pojos clean install
(如 README 文件中所述)构建快速入门,请输入以下命令:mvn clean install
换句话说,省略 Maven 命令的
-Pgenerate-pojos
选项。- ENTESB-8140 Start 级别热部署捆绑包默认为 80
在 Fuse 7.0 GA 版本中,在 Apache Karaf 容器中,热部署的捆绑包的开始级别默认为 80。这可能会导致热部署捆绑包出现问题,因为有很多系统捆绑包和功能具有相同的启动级别。要临时解决这个问题,并确保热部署的捆绑包可靠地启动,请编辑
etc/org.apache.felix.fileinstall-deploy.cfg
文件并更改felix.fileinstall.start.level
设置,如下所示:felix.fileinstall.start.level = 90
- ENTESB-7664 安装框架安全特性终止 karaf
必须使用
--no-auto-refresh
选项安装framework-security
OSGi 功能,否则此功能将关闭 Apache Karaf 容器。例如:feature:install -v --no-auto-refresh framework-security
7.6. Apache Camel
Apache Camel 有以下已知问题:
- ENTESB-12210 XPath 评估失败,使用 Saxon-HE-9.8.0-8_1
- 自 Fuse 7.0 起,xpath 表达式会抛出 NullPointerException (NPE),如果在 Saxon 用作 JAXP 供应商时针对 null 标头或正文执行。
- ENTESB-12050 [camel-jetty] java.lang.NoClassDefFoundError: org/eclipse/jetty/util/MultiPartInputStreamParser
从 Fuse 7.5.0 开始,如果您通过设置
multipartFilter
选项(或multipartFilterRef
选项)在 Jetty9 组件上定义了自定义多部分过滤器,则必须通过扩展新的org.apache.camel.component.jetty.MultiPartFilter
类来实现自定义多部分过滤器。如果您已有一个过滤器实现,它通过扩展 (已弃用)org.eclipse.jetty.servlets.MultiPartFilter
类来定义,则必须通过扩展org.apache.camel.component.jetty.MultiPartFilter
来重新实施此类。请注意,如果您部署一个旧的自定义过滤器,它通过将
org.eclipse.jetty.servlets.MultiPartFilter
扩展到 Fuse 7.5.0 中的 Apache Karaf 容器,您将获得java.lang.NoClassDefFoundError
。这是因为已弃用的org.eclipse.jetty.servlets.MultiPartFilter
类使用已弃用的org.eclipse.jetty.util.MultiPartInputStreamParser
类,它已从 Jetty 9.4.20 中删除。- 带有 https 的 ENTESB-10490 camel-jetty9 不适用于 IBM java
- Camel Jetty9 组件的默认安全设置与 IBM Java 虚拟机不兼容。要在 IBM Java 虚拟机上通过 Camel Jetty9 组件使用 TLS 安全性,需要在 Jetty9 组件上明确配置 TLS 安全设置。
- ENTESB-12102 Camel-box Quickstart 无法正常工作
在 Fuse 7.5.0 中,在运行示例应用程序时,
camel-box
Quickstart 会出现错误。要临时解决这个问题,请编辑camel-box/src/main/resources/OSGI-INF/blueprint/box.xml
文件,并在路由定义末尾附近查找以下行:<to uri="box:files/uploadFile"/>
使用以下行替换它(添加
check=false
URI 选项):<to uri="box:files/uploadFile?check=false"/>
- ENTESB-11060 [camel-linkedin] V1 API 不再被支持
- 自 Fuse 7.4.0 起,Camel LinkedIn 组件无法再与 LinkedIn 服务器通信,因为它使用 LinkedIn Version 1.0 API 实施,它不再受 LinkedIn 支持。Camel LinkedIn 组件将更新为在以后的 Fuse 版本中使用 Version 2 API。
- ENTESB-5231 PHP 脚本语言无法正常工作
- Apache Karaf 容器上的 Camel 应用程序 不支持 PHP 脚本语言,因为 PHP 没有适用于 PHP 的 OSGi 捆绑包。
- ENTESB-5232 Python 语言无法正常工作
- Apache Karaf 容器上的 Camel 应用程序 不支持 Python 脚本语言,因为 Python 没有适用于 Python 的 OSGi 捆绑包。
- ENTESB-2443 Google Mail API - 发送消息和草案不是同步
- 当您发送消息或草案时,响应包含一个 ID 的 Message 对象。可能无法通过另一个调用 API 立即获取此消息。您可能需要等待和重试调用。
- ENTESB-2332 Google Drive API JSON 响应用于更改返回首页的项目的错误计数
-
Google Drive API JSON 响应用于更改返回首页的项目的错误计数。为列表操作设置
maxResults
可能无法返回第一个页面中的所有结果。您可能需要通过多个页面来获取完整的列表(即在新请求中设置pageToken
)。
第 8 章 Fuse 7.5.1 中解决的问题
Fuse 7.5.1 发行版本解决了 Fuse Online 集成升级问题。只有在您想要将 Fuse Online 7.4 集成升级到 7.5 时,才需要 Fuse 7.5.1 版本。换句话说,Red Hat Fuse 7.5.1 不是完整版本。它包含控制 Fuse Online 的操作器的更新。
下表列出了 Fuse 7.5.1 中解决的问题。
表 8.1. Fuse 7.5.1 解决的问题
问题 | 描述 |
---|---|
因为缺少 komodo 镜像,升级 7.4 → 7.5 卡住 | |
Postgres 从 9.5 升级到 9.6 将不会使用旧数据 dir | |
在 Fuse Online 1.5 中无法覆盖 OAuth 代理 SAR |
第 9 章 修复了 Fuse 7.5 中的问题
以下小节列出了 Fuse 7.5 中修复的问题:
9.1. Fuse 7.5 中的增强
下表列出了 Fuse 7.5 中的增强功能。
表 9.1. Fuse 7.5 增强
问题 | 描述 |
---|---|
为 OpenShift 4 激活新的 Fuse Console 网关 | |
Pax 日志记录应该支持日志标记 | |
审计日志记录增强: auth 尝试的日志源 | |
自定义用于 Syndesis-UI 用户界面的选项 | |
带有 request-reply 消息传递的 CXF JMS 传输会删除临时队列 whilst 消息仍然处于 flight | |
spring-boot-camel-infinispan:支持自动下载 infinispan 服务器 | |
camel-cxf CxfEndpoint 应该避免使用 cxf interanl api | |
允许更新 DeploymentConfig | |
box - 允许将内容映射到 box 连接器中的 fileId | |
Relax 安装程序限制检查目标 EAP 版本 | |
[Hawtio] 改进了对 HTTP 403 响应的处理 | |
将所有快速入门与部署相同方法保持一致 | |
camel-undertow 无法处理大型数据流 | |
升级到 Pax Logging 1.11.0 (这意味着 Karaf 4.2.7) | |
在新的 API 客户端向导中提供有关身份验证类型的说明 | |
符合 JWS 3.1.7 和 5.0.3 | |
DynamoDB UI 的改进 | |
在不重新安装 EAP 的情况下修补 EAP 7 的功能 | |
Productised DV Operator CSV 需要清理 |
9.2. Fuse 7.5 中的功能请求
下表列出了 Fuse 7.5 中的功能请求。
表 9.2. Fuse 7.5 功能请求
问题 | 描述 |
---|---|
自定义用于 Syndesis-UI 用户界面的选项 | |
Fuse Online 客户端使用 3scale 管理的 API | |
由嵌入式 camel-undertow 消费者端点访问日志支持 | |
用于 Openshift 上的 Fuse 的 SB2 | |
API 提供程序:提高错误处理 | |
DynamoDB Connector | |
升级 Operator 支持 | |
安装方法整合 | |
条件流增强 | |
box 连接器整合 | |
在 Syndesis 中为公布的虚拟化创建一个连接 | |
支持 Salesforce as Data Integration In Syndesis | |
UI 以查看 View 数据的预览。 | |
"删除重复属性 | |
添加了对 Salesforce 组件上更改数据捕获事件的支持 | |
提供将 env 变量设置为集成 pod 的部署配置的方法 | |
SFTP Like CamelFtpReplyCode And CamelFtpReplyString for FTP/FTPS 的 Status/Error Response Code 的标头 | |
Fuse Online:选择在没有演示数据和应用程序的情况下在内部安装 Fuse 在线。 | |
[Syndesis] MongoDB connector - TP 功能 | |
pax-web undertow http web 服务的 record-request-start-time 访问日志记录选项 | |
IMAP/POP/SMTP 邮件连接器 | |
JIRA Connector | |
支持 MongoDB 作为 Data Source In Syndesis | |
邮件连接器整合 | |
JIRA 连接器整合 | |
开发用于部署 VDB 的 OpenShift Operator | |
提供模板来为非 Operator 环境安装 Fuse Online 7.5 | |
提供 OData 源支持 | |
恢复 Hawtio v2 的自定义插件机制 | |
OpenAPI 支持作为数据源 | |
为 SpringBoot 提供剩余的访问 |
9.3. Fuse 7.5 中的冲突
下表列出了 Fuse 7.5 中的说明。
表 9.3. Fuse 7.5 Clarifications
问题 | 描述 |
---|---|
[Operator] 默认应该部署哪个版本 | |
Syndesis CR 可能需要为升级镜像配置标签 | |
如何使用 Openshift 4 测试 karaf + cxf | |
确定 Syndesis 部署的所有支持配置选项 |
9.4. Fuse 7.5 中解决的错误
下表列出了 Fuse 7.5 中已解析的错误。
表 9.4. Fuse 7.5 解析的错误
问题 | 描述 |
---|---|
camel-k: 无法找到 2.21.0.fuse-750033-redhat-00001 的目录 | |
fuse7-fuse-java-openshift:1.5-14 包含 weird rpm (scl-utils) | |
[SB2] Configmap booster 使用不同的健康检查,然后是其他提升器 | |
fuse-java-openshift 镜像中的 Jolokia 选项不正确 | |
[SB2] Booster circuit breaker 失败,在运行时没有匹配 RBAC 策略 | |
[SB2][narayana-spring-boot-recovery-controller] NoClassDefFoundError: io/fabric8/kubernetes/api/model/extensions/StatefulSet | |
[Apicurito] 更新场景无法正常工作 | |
Fuse 在线无法在在线集群中置备 | |
[OCP4][SB2] Boosters regression OCP3 与 OCP4 | |
[SB2] Circuit breaker booster doesnt work | |
Fuse Online 模板:缺少 Datavirt 似乎 | |
[ER2] karaf-camel-amq S2I 正在查找非现有的 evironment 变量 AMQP_SERVICE_PORT | |
SB1/SB2 FMP statefulsets 创建回归 | |
[SB2] Configmap booster - Configmap 更改不会反映 | |
[ER2] Weird behaviour of Fuse Console | |
[camel-jetty] java.lang.NoClassDefFoundError: org/eclipse/jetty/util/MultiPartInputStreamParser | |
[ER1] SB 2 快速入门没有正常工作的就绪状态 | |
[ER1] kamel binary from Camel-k image 会打印非产品版本 | |
确保 CXF 可以遵循 JDK-8211883 | |
在 OData 中选择资源集合允许插入不存在的资源集合名称 | |
[Datamapper] Transformation 的分隔符未保存 | |
[conditional Flow] datashape 更改不会被传播到条件中 | |
无法使用 operatorhub 的 Apicurito 安装 | |
离线清单使用错误版本引用 RH 工件 | |
offliner 工具需要从 | |
Fuse 作为 Windows Service 无法启动 | |
在 OCP4.1 beta 上使用 Fuse 控制台的问题 | |
没有使用 org.jboss.redhat-fuse:maven-bundle-plugin,但应该是 | |
[Hawtio] 当创建了一个错误数据的新端点时,没有错误消息 | |
在集成中配置连接会导致白色屏幕 | |
API 供应商中无效的 API 规格格式 URL 没有显示错误 | |
在 todo app in latest syndesis 中无法创建新条目 | |
将 go to operation list 添加到 API 供应商 | |
Datamapper - 我必须删除映射两次,才能使其消失 | |
模板不接受除 txt 以外的其他文件类型 | |
PublicAPI:导入后重复标签(tag)已存在但集成不存在 | |
"""在发布集成尚未触发时,没有可用的数据为运行时间"。 | |
Database Invoke 存储的步骤操作下拉菜单在配置中为空 | |
创建新连接 - 连接列表项太大 | |
[Camel-k] Namespace 参数在尝试发布集成时是必需的 | |
管理 CI/CD UI 不会检查重复项 | |
FHIR 操作页面卡住加载 | |
线程上运行活动跟踪任务失败: Logs Controller [idle]java.lang.NullPointerException: null | |
[Syndesis] running install_ocp.sh --setup --camel-k --verbose messes up the camel-k download | |
Fuse Online install 1.7.25 使用健康索引 F 从过时的镜像安装 prometheus | |
[Operator] Link syndesis-pull-secret (如果不存在,则首先创建它)到 syndesis-operator SA | |
"在 camel-undertow 中分离 http 端点会在类型转换期间抛出: ""Error during type: org.apache.camel.converter.stream.FileInputStreamCache to the required type""。 | |
使用 webhook 和 API-provider 创建集成不一致 | |
"在 3scale""和 ""do 中使用 ""manage 后的"黑色屏幕无法通过 3scale""公开" | |
[upgrade] 升级不会因为 Operator 中的错误而完成 | |
"Operator 默认不应升级到 ""latest""" | |
[Camel-olingo4] Wrong 模块依赖 EAP | |
Google 日历选择日历下拉菜单更改为文本输入 | |
Fuse Online:用户名之间有逗号的安装失败。 | |
在抛出 soap 故障时设置 cxf 标头 | |
"Syndesis operator 默认部署 ""latest"" syesis | |
当未设置 Column 名称时,Google spreadsheets 会更改 datatype | |
日历 ID 从 select 改为文本输入 | |
需要一个在 syndesis-server-config 中指定替代 Maven 存储库的方法 | |
Operator 会自动将 openshift 资源重置为原始状态 | |
无法运行复合集成 | |
虚拟化详情页面不包含发布状态 | |
通过 TODO 应用程序失败插入/更新/删除任务 | |
MySQL 连接不会显示在 Import Data Source 向导中 | |
底部面板的利润过大 | |
连接表单中不会显示工具提示 | |
从预定义的 PostgresDB 连接创建视图无法正常工作 | |
"""not SQL Connection | |
条件流 UI 未对齐,移动按钮不起作用 | |
Openshift 4 中的 Operatorhub 不提供 Fuse 和 FO Operator | |
修复 flaky test PubNubPresenceTest.testPresence 的问题 | |
"""history""命令会抛出 NPE" | |
将 CAMEL-12451 的后向移植请求到 Fuse 7.3 | |
ConsulIntegrationTest 失败,并带有 NoSuchMethodError | |
redhat-fuse-7.5.0.fuse-sb2-750001.pom 正在引用几个 7.4.0 工件(包括一些不可用的工件) | |
元数据/架构不反映 DV 中来自数据库的最新更新 | |
[Apicurito] Broken CSS in About 对话框中的 Apicurito | |
[Camel-yammer] olderThan 选项不适用于 Spring-boot-2 | |
[Hawtio operator] hawtio-online 的最新标签无法正常工作 | |
Camel http4 异常,带有空正文 | |
WS-Security 与 MTOM attachments 结合使用 | |
[Karaf-maven-plugin] 客户端目标 + 脚本执行无法正常工作 | |
断路器提高程序没有在插件中明确设置版本 | |
[ER2] Quickstarts 查找不存在的 GIT_REF | |
[ER2] DV operator 无法构建构建器镜像 | |
创建数据虚拟化无法正常工作 | |
允许在 DV operator 中覆盖 s2i 镜像 | |
DV 操作器需要一种指定备用 maven 存储库的方法 | |
[ER1] dv-operator 从社区工件构建 VDB | |
[ER1] dv-operator 使用社区 s2i 镜像构建 VDB | |
[ER1][OCP4] Prometheus 安装无法正常工作 | |
FHIR- create: Error retrieve resource schema for type… | |
当 Syndesis 服务器不可用时,SQL 连接会被阻止 | |
在 Import data source 页面中无法看到 salesforce 连接 | |
文本字段而不是 Salesforce 连接中的下拉菜单 | |
camel-kafka 中的问题描述 | |
Karaf,因为服务无法在 rhel 上工作 | |
[ER1 Fuse Console] Operator 部署社区版本的 hawtio | |
[ER1] Spring boot 2 快速入门无法部署 | |
[7.5 ER1] 数据虚拟化不会因为缺少工件而部署 | |
Spring Boot 2 BOM 中缺少 artefact | |
[ER1] fis-console-namespace-template.json is broken | |
部署配置模板包含硬编码复合容器名称 | |
升级后无法重建集成 | |
[ER1] Camel-k 无法正常工作 | |
[ER1] 快速入门包含错误的 BOM 版本 | |
恢复动态操作元数据查找表单字段渲染的行为 | |
Hibernate 不导出 org.hibernate.proxy 软件包 | |
无法安装 17 个功能 | |
在发布 Salesforce VDB 过程中出现错误 | |
导入数据源仅显示 Salesforce 连接的一个模式 | |
AWS dynamoDB 示例 json 无法正常工作 | |
"prohibit ""unpublish"" (如果虚拟化被集成使用" | |
即使 DV 在 Syndesis CR 中被设置为禁用,也会启用 DV UI | |
扩展 Fuse Online 集成会错误地将状态设置为"停止" | |
在 Sydesis CR 中设置镜像标签会阻止部署 | |
关闭后,错误消息会保留在对话框中。 | |
SQL Client 结果无法水平滚动 | |
Backport CAMEL-13986 | |
Backport CAMEL-13983 | |
Backport CAMEL-13994 | |
Backport CAMEL-12891 | |
从 prometheus 镜像流中删除 docker registry | |
"CXF LoggingInInterceptor | |
根据通过 PublicApi 的标签导出集成无法正常工作 | |
预览部分更新以提高可用性 | |
DV Details 页标题区域改进 | |
在创建视图或虚拟化时添加 Cancel 按钮 | |
AWS dynamoDB - 验证在不存在的表名称上会显示成功 | |
MySQL 数据源的预览数据会抛出异常 | |
数据映射程序步骤不包含任何数据 | |
在创建的视图中缺少第二个表名称 | |
使用按钮不一致的页脚 | |
当在集成中使用连接器两次时 - 无法选择与第一次添加的不同操作 | |
"虚拟化页面 | |
在 Slack 中选择频道名称允许插入不存在的频道名称 | |
条件流表达式形式可用性 | |
升级 pod 无法运行 oc 命令 | |
当尝试从列表中选择项目时 Glitch | |
DB DELETE 和 INSERT 后,集成流不会继续 | |
无法安装 camel-hystrix 和 camel-rx (再次yet) | |
[QUICKSTART] camel-linkedin Quickstart 无法正常工作 | |
Camel rest && swagger 在 SB2 上无法正常工作 | |
"Camel-linkedin: if accessToken is set | |
[Hawtio] Camel chart 在扩展 Web 浏览器窗口时会显示错误 | |
将 CXF 总线作为 OSGi 服务公开,并在其他捆绑包中引用它 | |
cherry-pick commit | |
CamelBlueprintTestSupport 支持调用使用OverridePropertiesWithPropertiesComponent ()两次 | |
Backport CAMEL-12947 | |
UI 按钮放置 | |
camel-mail 不依赖于 com.sun.mail:javax.mail:jar,它应该是 | |
camel-jdbc transaction 无法正常工作 | |
Fuse Console Preferences 中的不可见的项目 | |
Karaf-cxf-rest: Warning: 覆盖现有默认上下文 | |
fabric8-project-bom-camel-spring-boot 中缺少 CXF 依赖项 | |
review 和 polish spring-boot-camel quickstart | |
[Hawtio] Negative number in Preferences | |
在 Karaf 上的 Red Hat Fuse 7.4 中,无法将命令作为客户端脚本的参数。 | |
[ER2][SB2] 应用程序模板指向不存在的标签 | |
Syndesis DB 不会在 OpenShift 4.2 上部署 | |
Syndesis 服务器配置缺少 integrationLivenessProbeInitialDelaySeconds | |
[ER2] 自定义 karaf 应用程序失败,因为就绪度探测无法正常工作 | |
无法在新 ui 中创建电子邮件连接 | |
[ER1] Align spring-boot-camel-rest-3scale 与部署相同的方法 | |
[ER1] spring-boot-camel-xml 拉取错误的 FMP 版本 | |
Syndesis-dv 服务器需要大量 CPU 资源 | |
表的自动完成列表没有资格 | |
Preview Table 显示列数据是多行 | |
UI 在发布虚拟化时显示 ERROR | |
未能在 rhpds 中发布 VDB | |
发布 VDB 会在 syndesis-dv pod 日志中抛出错误 | |
[ER1] spring-boot-camel-infinispan 缺少 readiness/liveness 探测 | |
AWS dynamoDB 技术预览标签 | |
"删除集成 ""Forbidden!Configured 服务帐户没有访问权限时的错误" | |
编辑已创建集成时数据映射程序会失败 | |
Syndesis Operator 将错误更改应用到 syndesis-server 资源 | |
Camel 聚合在集群环境中失败,使用 Postgresql 作为存储库 | |
[ER1] Operator 无法创建镜像流,因为没有加引号的名称 | |
OData 连接器使用 Filter 旧结果更新 null 值,并打开 | |
Spring Boot 1 BOM 中缺少 camel-starters | |
[ER1] SB2 快速入门无法正常工作,因为 FMP 缺少类 | |
[ER1] Custom karaf app failed with null bundle | |
集成名称已使用时缺少错误消息 | |
安装 spring-jdbc 功能会破坏 camel 组件的加载 | |
JIRA 连接器是技术预览 | |
[ER1][OCP4][SB1] Watching configmap throws 异常 | |
"UI Silently Ignores the ""publish"" error" | |
SB2 BOM 中缺少 qpid-jms-client | |
当传入的数据是集合时,数据映射器不会映射任何信息 | |
[API 客户端连接器] swagger 文件名到达帧 | |
[ER2] Prod 构建使用社区 oauth 代理 | |
JDBC 绑定地址到不同的 IP | |
id 操作中的 MongoDB find 会抛出错误 | |
在 Syndesis CR 中指定每个镜像的 docker registry | |
MongoDB 插入操作抛出错误,从而导致跳过后续步骤 | |
除非填写了非必需字段,否则 MongoDB 连接不会验证 | |
命令 shell:history 无法在 Fuse 7.4.0 上工作 | |
DV operator 使用旧的 teiid 工件构建 | |
Teiid-syndesis 没有与 redhat 版本的 camel 保持一致 | |
[upgrade] Rollback | |
SQL 语句包含上一步中的文本 | |
Syndesis operator 将错误版本的 camel 和 camel-k-runtime 传递给 camel-k | |
无法修补到 750033-redhat-00002 ER2 | |
Fuse 7.5.0.ER2 SB BOM 中缺少一些启动者 | |
[Apicurito] operator 无法构建 UI | |
[Apicurito] operator 是不可测试的 | |
在创建 pull secret 时,DV install-operator 脚本会失败 | |
DV install-operator 脚本引用 master 资源 yamls |