Release Notes for Red Hat Fuse 7.10

Red Hat Fuse 7.10

What's new in Red Hat Fuse

Red Hat Fuse Documentation Team

Abstract

These notes provide an overview of the changes between Red Hat Fuse releases.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. We are beginning with these four terms: master, slave, blacklist, and whitelist. Because of the enormity of this endeavor, these changes will be implemented gradually over several upcoming releases. For more details, see our CTO Chris Wright’s message.

Chapter 1. Fuse 7.10 Product Overview

1.1. Fuse distributions

Fuse 7.10 is provided in the form of three different distributions, as follows:

Fuse standalone

The classic distribution of Fuse, supported on multiple operating systems. This distribution is supported for the following container types:

  • Apache Karaf
  • JBoss Enterprise Application Platform (EAP)
  • Spring Boot
Fuse on OpenShift

The distribution of Fuse for running integration applications on OpenShift (supported on the Red Hat Enterprise Linux operating system). In this case, the supported container types are provided in the form of docker-formatted container images:

  • Java image (for Spring Boot)
  • Apache Karaf image
  • JBoss EAP image
Fuse Online

The distribution of Fuse for non-expert integrators with a simplified workflow accessed through a browser based UI. This distribution is available for the following kinds of deployment:

  • On an OpenShift Dedicated (OSD) cluster.
  • For installation on an on-premises OpenShift cluster

1.2. New features

Fuse 7.10 includes several major component upgrades and a large selection of new features. For details, consult the new features sections for each of the Fuse distributions:

1.3. Fuse 7.10.1 Notes

For Fuse on OpenShift 7.10.1, the BASEURL for image streams is https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_10_1-00010-redhat-00001.

For Fuse Online, to upgrade from Fuse Online 7.9.x to 7.10.1, follow the instructions in Section 2.4, “Upgrading from Fuse Online 7.9.x to 7.10.x requires manual upgrade steps”.

For Fuse standalone, set the 7.10.1 fuse.version property to the corresponding BOM version as listed in Section 4.4.2, “BOM File for Fuse 7.10.1”.

See also Section 8.4, “Bugs resolved in Fuse 7.10, 7.10.1, and 7.10.2”.

1.4. Fuse 7.10.2 Notes

For Fuse on OpenShift 7.10.2, the BASEURL for image streams is https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_10_2-00001-redhat-00001.

For Fuse Online, to upgrade from Fuse Online 7.9.x to 7.10.2, follow the instructions in Section 2.4, “Upgrading from Fuse Online 7.9.x to 7.10.x requires manual upgrade steps”.

For Fuse standalone, set the 7.10.2 fuse.version property to the corresponding BOM version as listed in Section 4.4.1, “BOM File for Fuse 7.10.2”.

See also Section 8.4, “Bugs resolved in Fuse 7.10, 7.10.1, and 7.10.2”.

1.5. Important Notes

Fuse 7.10 includes a fix for the Log4j 2.x security issue, CVE-2021-44228 (popularly known as Log4Shell).

Fuse 7.10.1 also includes the following fixes for the Log4j 2.x security issue:

Fuse 7.10.2 includes a fix for the Spring MVC security issue, CVE-2022-22965 (popularly known as Spring4Shell).

1.6. Supported Configurations

Important

For running Fuse in Apache Karaf, we recommend OpenJDK 8u282 or OpenJDK 8u302. Do not use OpenJDK 8u292, which has a known issue affecting the credential store (see ENTESB-16417). OracleJDK 1.8.0_291 is also affected by this issue.

For information about supported configurations, standards, and components in version 7.10, see the following Customer Portal articles:

Chapter 2. Fuse Online

Fuse Online provides a web browser interface that lets a business expert integrate two or more different applications or services without writing code. It also provides features that allow the addition of code if it is needed for complex use cases.

Fuse Online runs an integration on OpenShift as a Spring Boot application that uses Apache Camel.

2.1. About Fuse Online distributions

Fuse Online is Red Hat’s web-based integration platform. Syndesis is the open source project for Fuse Online. Fuse Online runs in these OpenShift environments:

Host Environment

Installation

OpenShift Dedicated

Red Hat installs and provisions Fuse Online on Red Hat infrastructure.

OpenShift Container Platform

Customer installs and manages.

2.2. New features in Fuse Online 7.10

Fuse Online 7.10 provides the following new features:

  • Support for connecting to Red Hat Managed Kafka

    To support connecting to Red Hat Managed Kafka, the Kafka Message Broker connector includes the following fields:

    • Security Protocol
    • SASL Mechanism
    • Username
    • Password
    • SASL Login Callback Handler Class
    • OAuth Token Endpoint URI

      For more information, see Chapter 15, "Connecting to Kafka" in Connecting Fuse Online to Applications and Services.

  • Integration labels

    When you save an integration, you can apply one or more labels to it. A label is a key-value pair tag that you can apply to an integration (or other OpenShift resource) for later filtering and selecting in OpenShift. For example, an OpenShift admin user can filter the list of running pods or deployments by label.

  • Integration environment variables

    Optionally, when you save an integration, you can set one or more environment variables that Fuse Online applies to the integration Pod. You can use these environment variables to set Spring Boot configuration options, for example, to set SERVER_MAX_HTTP_HEADER_SIZE. Existing environment variables set manually are preserved.

    Note that setting these environment variables in Fuse Online when you save an integration does not change or impact any other environment settings set manually, for example, through the OpenShift web console interface.

  • Maven mirror setting

    You can specify the Maven repository that you want Fuse Online to use for accessing Maven artifacts when it builds integrations. In the Syndesis custom resource, specify the Maven repository as the value of the components:server:features:maven:mirror setting.

2.3. Changes in Fuse Online 7.10

Fuse Online 7.10 changes Fuse Online 7.9 features as follows:

  • To enable the sample Postgres database, use the todo addon option

    In previous releases, if you want to include a sample database and sample database connector in your Fuse Online installation, set the demoData option in the Fuse Online custom resource. Starting with Fuse Online 7.10, you enable the sample database and connector by setting the todo addon option, which also includes the sample Todo app for testing integrations.

  • Kafka broker URIs are auto-discovered for AMQ Streams

    If you use AMQ Streams (API versions v1beta1 or v1beta2), when you create a new Kafka Message Broker connection in Fuse Online, the Kafka Broker URI is auto-discovered and shown in the Kafka Broker URI drop-down list.

  • Disconnected environment requires setting environment variables

    For Fuse Online to install and work in a disconnected environment, you must set the following environment variables to syndesis-oauthproxy:

    • HTTPS_PROXY
    • HTTP_PROXY
    • NO_PROXY
  • deployIntegrations flag no longer available

    The deployIntegrations option in the Fuse Online custom resource that controlled whether integrations were deployed has been removed.

2.4. Upgrading from Fuse Online 7.9.x to 7.10.x requires manual upgrade steps

If you installed Fuse Online 7.9.x and you want to upgrade to Fuse Online 7.10.x, you must first manually upgrade to Fuse Online 7.10.0.

  1. In the Administrator perspective of the OpenShift Container Platform web console, navigate to Operators > Installed Operators.
  2. Click the Red Hat Integration Fuse Online 7.9.3 Operator.
  3. Click the Subscription tab.
  4. Verify that Update approval is set to Manual:

    • If Update approval is set to Manual, skip to the next step.
    • If Update approval is set to Automatic:

      1. Click Automatic.
      2. In the Change Update Approval Strategy dialog, select Manual and then click Save.
  5. Under Update channel, click 7.9.3.
  6. For the Change subscription update channel, select 7.10.x.

    Note: The latest, candidate, and stable channels are Technology Preview features.

  7. Under Upgrade status, click Upgrade available.
  8. Click Preview InstallPlan and then Approve.
  9. Verify that the operator has fully completed the upgrade to Fuse Online 7.10.0:

    1. Navigate to the Operators > Installed Operators page and then click Red Hat Integration Fuse Online. The Operator Details page opens.
    2. Select the Sydnesis tab. The status for the Fuse Online instance (the default name is app) initially shows Installed (to indicate that Fuse Online 7.9.3 is installed). It then progresses through several phases (Installing, Starting, and Installed). When it reaches the Installed phase again, the upgrade to 7.10.0 is complete.
  10. Navigate back to the Operators > Installed Operators page, and then click Upgrade available for the Red Hat Integration Fuse Online operator.
  11. Click Preview InstallPlan and then Approve.
  12. Verify that the operator has fully completed the upgrade to Fuse Online 7.10.x:

    1. Navigate to Networking > Routes and then click on the location link for syndesis to open the Fuse Online web console.
    2. In the upper right corner of the Fuse Online console, click the ? icon and then select About.
    3. Verify that the About page includes 7_10_x in the version number.

2.5. Upgrading Fuse Online integrations

To upgrade a Fuse Online environment that is running on OCP on-site, you must update Fuse Online by using the operator and then republish any running integrations as described in Upgrading Fuse Online.

On OCP 4.9, when you upgrade to 7.10 by using the operator, the following warning is displayed during the Fuse Online Operator upgrade process:

W1219 18:38:58.064578 1 warnings.go:70] extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress

This warning appears because clients (that Fuse Online uses for the Kubernetes/OpenShift API initialization code) access a deprecated Ingress version. This warning is not an indicator of complete use of deprecated APIs and there is no issue with upgrading to Fuse Online 7.10.

2.6. Important notes for Fuse Online

Important notes for the Fuse 7.10 release of the Fuse Online distribution:

  • Fuse Online no longer supports Camel K runtime or the KNative connector.
  • When Fuse Online is installed and provisioned on Red Hat infrastructure, the account is limited to a specific number of integrations that can be running at one time. For details, see the pricing plan.
  • An OpenAPI schema that you upload to Fuse Online might not define input/output types. When Fuse Online creates a custom API client from an OpenAPI schema that does not specify input/output types then it is not possible to create an integration that maps integration data to fields that the API client can process or from fields that the API client processed. If an integration requires data mapping to or from a custom API, then when you upload the OpenAPI schema, click Review/Edit to open API Designer, which is an API editing tool, and add input/output type specifications.
  • Since Fuse 7.8, an OpenAPI document that you use for a custom API client connector or for an API provider integration cannot have cyclic schema references. For example, a JSON schema that specifies a request or response body cannot reference itself as a whole nor reference any part of itself through any number of intermediate schemas.
  • On OCP 4.9 (or later), the application-monitoring project no longer works. It is a prerequisite for monitoring Fuse Online integrations and infrastructure components with Prometheus and Grafana.

    To work around this issue, you can use the built-in monitoring stack (in the openshift-monitoring namespace) to use the openshift-user-workload-monitoring feature and the grafana-operator to use the ops addon as described in the following Adding Fuse Online monitoring resources (Prometheus and Grafana) on OCP 4.9 (or later) procedure.

2.7. Obtaining technical support for Fuse Online

To obtain technical support, in the Fuse Online console, in the left navigation panel, click Support. Use the Support page to download diagnostic information for all integrations or for one or more integrations that you choose. The page also provides a link for opening a support ticket and providing the diagnostic information that you downloaded.

2.8. Technology Preview features in Fuse Online

This release includes the Technology Preview features that are listed below.

Important

Technology Preview features are not supported with Red Hat production service level agreements (SLAs), might not be functionally complete, and Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process. For more information, see Red Hat Technology Preview features support scope.

  • Data Mapper supports CSV data

    For any Fuse Online connector that has an action for which you can define a data shape, you now have the option to specify a CSV instance (in addition to the options to specify JSON schema, JSON instance, XML schema, or XML instance). For example, in a Webhook connection, you can specify a CSV file as a data output type for an action.

  • Fuse Online auditing

    Fuse Online supports basic auditing for changes made by any user to the following Fuse Online components:

    • Connections - The Name and any other fields shown on the connector’s Details page in the Fuse Online web console.
    • Connectors - The Name field.
    • Integrations - The Name field.
  • Conditional expressions for mapping data fields

    In the data mapper, you can specify a conditional expression and apply it to a data mapping. For example, a conditional expression can specify evaluation of a source field and how to populate the target field if the source field is empty. The limited set of expressions that you can specify are similar to Microsoft Excel expressions.

  • Document scope for user-defined properties in data mapper

    In the data mapper, you can specify a scope for properties that you define for source and target mappings. In the Mapping Details panel, click Add (+) next to Properties. In the Create Property dialog. for the new Scope option, you can select the current message header, a message header from a previous step, or Camel Exchange Property for Camel-specific properties.

  • For a REST API client that uses OAuth, when you create an API client connector, you can change the default OAuth2 behavior of connections that you create from that connector. Fuse Online vendor extensions to the OpenAPI specification support the following:

    • Providing client credentials as parameters.
    • Obtaining a new access token based on HTTP response status codes.

Chapter 3. Fuse on OpenShift

Fuse on OpenShift enables you to deploy Fuse applications on OpenShift Container Platform.

3.1. Supported version of OpenShift

For details of the supported version (or versions) of OpenShift Container Platform to use with Fuse on OpenShift, see the Supported Configurations page.

3.2. Supported images

Fuse on OpenShift provides the following Docker-formatted images:

ImagePlatformSupported architectures

fuse7/fuse-java-openshift-rhel8

Spring Boot

AMD64 and Intel 64 (x86_64)

fuse7/fuse-java-openshift-jdk11-rhel8

Spring Boot

AMD64 and Intel 64 (x86_64)
IBM Z and LinuxONE (s390x)
IBM Power Systems (ppc64le)

fuse7/fuse-karaf-openshift-rhel8

Apache Karaf

AMD64 and Intel 64 (x86_64)

fuse7/fuse-karaf-openshift-jdk11-rhel8

Apache Karaf

AMD64 and Intel 64 (x86_64)

fuse7/fuse-eap-openshift-jdk8-rhel7

Red Hat JBoss Enterprise Application Platform

AMD64 and Intel 64 (x86_64)

fuse7/fuse-eap-openshift-jdk11-rhel8

Red Hat JBoss Enterprise Application Platform

AMD64 and Intel 64 (x86_64)

fuse7/fuse-console-rhel8

Fuse console

AMD64 and Intel 64 (x86_64)
IBM Z and LinuxONE (s390x)
IBM Power Systems (ppc64le)

fuse7/fuse-console—​rhel8-operator

Fuse console operator

AMD64 and Intel 64 (x86_64)
IBM Z and LinuxONE (s390x)
IBM Power Systems (ppc64le)

fuse7/fuse-apicurito-generator-rhel8

Apicurito REST application generator

AMD64 and Intel 64 (x86_64)

fuse7/fuse-apicurito-rhel8

Apicurito REST API editor

AMD64 and Intel 64 (x86_64)

fuse7/fuse-apicurito-rhel8-operator

API Designer Operator

AMD64 and Intel 64 (x86_64)

3.3. New features in Fuse 7.10 on OpenShift

Fuse on OpenShift provides following new features in version 7.10:

  • Fuse Console performance tuning (OpenShift 4.x only)

    You can tune the performance of the Fuse Console by setting any of the clientBodyBufferSize, proxyBuffers, and subrequestOutputBufferSize environment variables.

    Note: This feature is not supported on OpenShift 3.11.

  • Support for JDK 11

    Fuse 7.10 offers support for building the Fuse on OpenShift quickstarts using JDK 11.

  • Running quickstarts with openshift-maven-plugin

    Fuse 7.10 uses new openshift-maven-plugin when building and running the Fuse on OpenShift quickstarts with Maven archtypes.

  • Support for IBM Power Systems, IBM Z, and LinuxONE

    Fuse 7.10 adds support for IBM Power Systems(ppc64le), IBM Z, and LinuxONE (s390x) on Red Hat OpenShift Container Platform 4.9 and later.

    Note

    In Fuse 7.10, installing the Fuse on OpenShift imagestreams and templates on IBM Power Systems, IBM Z, and LinuxONE is not supported. Only the components that can be installed with Fuse on OpenShift Operators are supported on IBM Power Systems, IBM Z, and LinuxONE.

3.4. Important notes

Important notes for the Fuse 7.10 release of the Fuse on OpenShift distribution:

OpenJ9 images for IBM Z and IBM Power Systems are deprecated
OpenJ9 images for IBM Z and IBM Power Systems are deprecated for Fuse 7.10. The OpenJDK11 Builder and Runtime images have been updated to support multiple architectures.
Support for Fuse 7.10 on OpenShift Container Platform (OCP) 4.9
Fuse 7.10 contains updates that enable it to work with OpenShift Container Platform (OCP) 4.9. If you plan to upgrade to OCP 4.9, you must upgrade Fuse to version 7.10 before you upgrade OCP to version 4.9. Earlier versions of Fuse (prior to 7.10) do not support OCP 4.9.
Data Virtualization has been removed
Data Virtualization is deprecated since Fuse 7.7 and has been removed from Fuse 7.8.
Spring Boot 1 is has been removed
Spring Boot 1 is deprecated since Fuse 7.7 and has been removed from Fuse 7.8. We recommend that you migrate your Spring Boot applications to Spring Boot 2, following the guidance in the Spring Boot 2.0 Migration Guide.
Fabric8 Maven plugin is removed
Fabric8 Maven plugin is completely removed from Fuse 7.10 and replaced with OpenShift Maven plugin since Fuse 7.10. Use OpenShift Maven plugin to build and deploy your applications.
Running quickstarts with JDK11
Use the correct JDK11 profile during the compile time if you want to use JDK11 based image at runtime. When building and deploying the quickstarts using JDK11, ensure that you have installed JDK11 on your build machine and then build your quickstarts using the correct JDK11 profile.
The eap-camel-jpa quickstart has been removed
The eap-camel-jpa quickstart has been removed from Fuse 7.8 due to an issue with a dependency.
Jolokia not externally accessible on Fuse 7.8
Starting in Fuse 7.8, Jolokia default protocol is switched from HTTP to HTTPS.

Chapter 4. Fuse Standalone

4.1. Supported containers

Fuse standalone 7.10 is supported on the following runtime containers:

  • Spring Boot 2 (standalone)
  • Apache Karaf
  • Red Hat JBoss Enterprise Application Platform (JBoss EAP)

4.2. New features in Fuse 7.10

The main new features of Fuse standalone in version 7.10 are:

Java 11 is supported for Apache Karaf
Java 11 is now supported on the Apache Karaf runtime.

4.3. Technology Preview features

The following features of Fuse standalone are Technology Preview only and are not supported in Fuse 7.10:

Saga EIP
The Saga Enterprise Integration Pattern (EIP) is a technology preview feature and features only the In-Memory Saga service (which is not suitable for a production environments). The LRA Saga service is not supported. For more details, see section Saga EIP of the "Apache Camel Development Guide".

4.3.1. Fuse Tooling support for Apache Camel

Fuse Tooling provides a cross-platform, cross-IDE approach to Camel application development, with Apache Camel language support extensions or plugins for Visual Studio Code, Eclipse IDE, and Eclipse Che.

Note: These features are already included by default with Fuse Tooling for Red Hat CodeReady Studio.

Visual Studio Code features

Note

VS Code Apache Camel extensions are community features. They are not supported by Red Hat.

The Language Support for Apache Camel extension provides features for Camel URIs, such as the following:

For XML DSL and Java DSL:

  • You can navigate to endpoints in the VS Code Outline panel and in the Go > Go to Symbol in File navigation panel.
  • When you type, the editor provides code completion for Camel components, attributes, and the list of attribute values.
  • When you hover over a Camel component, the editor shows a brief description of the component (from the Apache Camel component reference).
  • As you edit the file, the editor performs an Apache Camel validation check on the Camel code.
  • You can specify a specific Camel Catalog version by selecting File → Preferences → Settings → Apache Camel Tooling → Camel catalog version.
  • You can use "Quick fix" features to address invalid enum values and unknown Camel URI component properties.

For XML DSL only:

  • You can navigate to Camel contexts and routes in the VS Code Outline panel and in the Go > Go to Symbol in File navigation panel.
  • When you type, the editor provides code completion for referenced IDs of direct, direct VM, VM and SEDA components.
  • You can find references for direct and direct VM components in all open Camel files.

For Properties:

  • Completion for Camel component property
  • Diagnostic

To access the Language Support for Apache Camel features, you add one or more extensions.

The Apache Camel Extension Pack installs the following VS Code extensions:

Optionally, you can install the extensions individually.

For more details, see the following readme files:

Eclipse IDE features

The Language Support for Apache Camel Eclipse plug-in provides the following features for Camel URIs:

In the generic Eclipse text editor for both XML DSL and Java DSL:

  • When you type, the editor provides code completion for Camel components, attributes, and the list of attribute values.
  • When you hover over a Camel component, the editor shows a brief description of the component (from the Apache Camel component reference).

To access the Language Support for Apache Camel features, you install the Eclipse plug-in from the Eclipse Marketplace. For more details, see the readme file for Apache Camel Language Server Protocol for Eclipse IDE.

Eclipse Che features

The Language Support for Apache Camel plugin for Eclipse Che 7 provides features for Camel URIs in XML DSL and Java DSL.

  • When you type, the editor provides code completion for Camel components, attributes, and the list of attribute values.
  • When you hover over a Camel component, the editor shows a brief description of the component (from the Apache Camel component reference).
  • When you save the file, the editor performs an Apache Camel validation check on the Camel code.

To activate this plugin for Eclipse Che, you can use the "Apache Camel based on Spring Boot" stack or edit your workspace configuration.

4.4. BOM files for Fuse 7.10, Fuse 7.10.1, and Fuse 7.10.2

To configure your Maven projects to use the supported Fuse 7.10, 7.10.1, and 7.10.2 artifacts, use the BOM versions documented in this section.

4.4.1. BOM File for Fuse 7.10.2

To upgrade your Fuse standalone applications to use the 7.10.2 dependencies, edit the Maven pom.xml and change the versions of the BOMs and Maven plugins listed in the following table:

Table 4.1. Maven BOM and plugin versions for 7.10.2 using the BOM

Container TypeMaven BOM or Plugin Artifact groupId/artifactIdVersion for Fuse 7.10

Spring Boot 2

org.jboss.redhat-fuse/fuse-springboot-bom

7.10.0.fuse-sb2-7_10_2-00001-redhat-00002

org.jboss.redhat-fuse/spring-boot-maven-plugin

7.10.0.fuse-sb2-7_10_2-00001-redhat-00002

Apache Karaf

org.jboss.redhat-fuse/fuse-karaf-bom

7.10.0.fuse-sb2-7_10_2-00001-redhat-00002

org.jboss.redhat-fuse/karaf-maven-plugin

7.10.0.fuse-sb2-7_10_2-00001-redhat-00002

JBoss EAP

org.jboss.redhat-fuse/fuse-eap-bom

7.10.0.fuse-sb2-7_10_2-00001-redhat-00002

For more details about using the BOM, see the Migration Guide.

4.4.2. BOM File for Fuse 7.10.1

To upgrade your Fuse standalone applications to use the 7.10.1 dependencies, edit the Maven pom.xml and change the versions of the BOMs and Maven plugins listed in the following table:

Table 4.2. Maven BOM and plugin versions for 7.10.1 using the BOM

Container TypeMaven BOM or Plugin Artifact groupId/artifactIdVersion for Fuse 7.10

Spring Boot 2

org.jboss.redhat-fuse/fuse-springboot-bom

7.10.0.fuse-sb2-7_10_1-00008-redhat-00001

org.jboss.redhat-fuse/spring-boot-maven-plugin

7.10.0.fuse-sb2-7_10_1-00008-redhat-00001

Apache Karaf

org.jboss.redhat-fuse/fuse-karaf-bom

7.10.0.fuse-sb2-7_10_1-00008-redhat-00001

org.jboss.redhat-fuse/karaf-maven-plugin

7.10.0.fuse-sb2-7_10_1-00008-redhat-00001

JBoss EAP

org.jboss.redhat-fuse/fuse-eap-bom

7.10.0.fuse-sb2-7_10_1-00008-redhat-00001

For more details about using the BOM, see the Migration Guide.

4.4.3. BOM File for Fuse 7.10

To upgrade your Fuse standalone applications to use the 7.10 dependencies, edit the Maven pom.xml and change the versions of the BOMs and Maven plugins listed in the following table:

Table 4.3. Maven BOM and plugin versions for 7.10 using the BOM

Container TypeMaven BOM or Plugin Artifact groupId/artifactIdVersion for Fuse 7.10

Spring Boot 2

org.jboss.redhat-fuse/fuse-springboot-bom

7.10.0.fuse-sb2-7_10_0-00014-redhat-00001

org.jboss.redhat-fuse/spring-boot-maven-plugin

7.10.0.fuse-sb2-7_10_0-00014-redhat-00001

Apache Karaf

org.jboss.redhat-fuse/fuse-karaf-bom

7.10.0.fuse-sb2-7_10_0-00014-redhat-00001

org.jboss.redhat-fuse/karaf-maven-plugin

7.10.0.fuse-sb2-7_10_0-00014-redhat-00001

JBoss EAP

org.jboss.redhat-fuse/fuse-eap-bom

7.10.0.fuse-sb2-7_10_0-00014-redhat-00001

For more details about using the BOM, see the Migration Guide.

4.5. Important notes

Important notes for the Fuse 7.10 release of the Fuse standalone distribution:

Java 11 is supported for Apache Karaf
The Fuse 7.10 release now supports Java 11 on the Apache Karaf runtime.
Creating a connection to MongoDB using the MongoClients factory

From Fuse 7.10, use com.mongodb.client.MongoClient instead of com.mongodb.MongoClient to create a connection to MongoDB (note the extra .client sub-package in the full path).

This affects any user applications that use camel-mongodb, which will now need to create a connection bean as a com.mongodb.client.MongoClient instance. Moreover, the methods exposed by this class are not exactly the same as the old class which could require more refactoring of user code.

For example, create a connection to MongoDB as follows:

import com.mongodb.client.MongoClient;

You can then create the MongoClient bean as shown in following example:

return MongoClients.create("mongodb://admin:password@192.168.99.102:32553");

Chapter 5. Deprecated and Removed Features

If you need any assistance or have any questions about the upcoming changes in Fuse 7, contact support@redhat.com.

5.1. Deprecated

The following features are deprecated in Fuse 7.10 and may be removed in a future release:

OpenWire protocol is deprecated
Since Fuse 7.10, use of the OpenWire protocol (which could be used to connect AMQ Broker instances) is deprecated. Note that the OpenWire protocol is also deprecated in AMQ Broker since AMQ Broker version 7.9.0.
wsdl2rest tool is deprecated
Since Fuse 7.10, the wsdl2rest command line tool is deprecated. The WSDL 2 Camel Rest DSL extension for VS Code is also deprecated.
Fuse Online install script for installation on OCP 4
Since Fuse 7.8, the Fuse Online install script is deprecated for installing Fuse Online on OpenShift Container Platform (OCP) 4.x versions. On OCP 4.x versions, we recommend that you use the Fuse Online Operator. The Fuse Online install script is still supported for installing Fuse Online on OCP 3.11.
PHP, Python, and Ruby scripting languages are deprecated in Camel applications
The PHP, Python, and Ruby scripting languages are deprecated in Camel applications since Fuse 7.4 and will be removed in a future release. The Camel community has deprecated PHP, Python, and Ruby since Camel 2.19 (see CAMEL-10973). This applies to all Fuse containers types: Apache Karaf, JBoss EAP, and Spring Boot.
HP-UX OS is deprecated
The HP-UX operating system is deprecated since Fuse 7.2 and support for this operating system could be removed in a future release of Fuse. In particular, note that the JBoss EAP 7.2 container has already dropped support for HP-UX and, consequently, any future version of Fuse on JBoss EAP that runs on JBoss EAP 7.2 will not be supported on HP-UX.
Camel MQTT component is deprecated
The Camel MQTT component is deprecated in Fuse 7.0 and will be removed in a future release of Fuse. You can use the Camel Paho component instead, which supports the MQTT messaging protocol using the popular Eclipse Paho library.
Camel LevelDB component is deprecated on all operating systems except for Linux
Since Fuse 6.3, the Camel LevelDB (camel-leveldb) component is deprecated on all operating systems except for Red Hat Enterprise Linux. In future, the Camel LevelDB component will be supported only on Red Hat Enterprise Linux.
BatchMessage class from the Camel SJMS component is deprecated
The BatchMessage class from the Camel SJMS component is deprecated in Fuse 7 (deprecated in Apache Camel since version 2.17) and may be removed from a future version of Apache Camel and Fuse.

5.2. Removed in Fuse 7.10

fabric8-maven-plugin
The fabric8-maven-plugin has been completely removed from Fuse 7.10. We recommend that you use the openshift-maven-plugin instead for building and deploying Maven projects in Fuse on OpenShift. The plugin is maintained by Eclipse JKube, which provides extensive documentation for the plugin.

5.3. Removed in Fuse 7.8

Spring Boot 1
Spring Boot 1 is no longer supported in Fuse 7.8. We recommend that you migrate your Spring Boot applications to Spring Boot 2, following the guidance in the Spring Boot 2.0 Migration Guide.
Camel K runtime in Fuse Online
Camel K runtime in Fuse Online (technology preview feature) is no longer supported in Fuse 7.8.
Camel XmlJson component has been removed in 7.8
The Camel XmlJson (camel-xmljson) component has been removed in Fuse 7.8.

5.4. Removed in Fuse 7.5

The following features were removed in Fuse 7.5:

Support for integration with MS SQL Server 2014 has been dropped in 7.5
MS SQL Server 2014 is no longer tested and supported for integrations with Fuse 7.5. We recommend that you use one of the more recent versions of MS SQL Server instead — for example, MS SQL Server 2016 or 2017.
Camel LinkedIn component has been removed in 7.5

The camel-linkedin component has been removed in Fuse 7.5.

Important

Although removed from Fuse 7.5, the camel-linkedin component is likely to be restored in a later release.

5.5. Removed in Fuse 7.3

The following features were removed in Fuse 7.3:

Camel YQL component has been removed in 7.3
The Camel YQL component has been removed in Fuse 7.3.
OpenJPA and OpenJPA3 Karaf features have been removed in 7.3
The openjpa feature and the openjpa3 feature have been removed from the Apache Karaf container in 7.3. For a Java Persistence Architecture (JPA) implementation, use the supported hibernate feature instead.
camel-jetty Karaf feature has been removed in 7.3
The camel-jetty feature has been removed from the Apache Karaf container in 7.3, because it uses Jetty 8. Use the camel-jetty9 feature instead.
pax-jms-oracleaq Karaf feature has been removed in 7.3
The pax-jms-oracleaq feature has been removed from the Apache Karaf container in 7.3, because it requires 3rd party, non-free Oracle AQ libraries.
camel-elasticsearch component has been removed from Fuse on EAP (Wildfly Camel) in 7.3
The camel-elasticsearch component has been removed from Fuse on EAP (Wildfly Camel) in 7.3. Use the newer camel-elasticsearch-rest component instead.

5.6. Removed in Fuse 7.2

The following features were removed in Fuse 7.2:

Camel XMLRPC component has been removed in 7.2
The Camel XMLRPC component has been removed in Fuse 7.2.
Camel Netty component has been removed in 7.2
The Camel Netty component has been removed in Fuse 7.2. It is recommended that you use the Camel Netty4 component instead.

5.7. Removed in Fuse 7.0

The following features were removed in Fuse 7.0:

Support for Red Hat JBoss Operations Network (JON) has been removed in 7.0
Since Fuse 7.0, Fuse on Karaf no longer supports JON and no longer provides JON plugins for integrating with the JON runtime.
Embedded ActiveMQ broker has been removed in 7.0
Since Fuse 7.0, Fuse on Karaf no longer provides an embedded ActiveMQ Broker. Customers should connect to a supported remote broker directly. For more information on our supported brokers, refer to the "Supported Messaging Providers" section of the Red Hat Fuse Supported Configurations page.
Fuse integration pack has been removed in 7.0
Support for running rules and processes is provided by components shipped with Red Hat JBoss BPM Suite and Red Hat JBoss BRMS.
Karaf console commands for child container administration have been removed in 7.0

Since Fuse 7.0, the Karaf console commands for child container administration are not supported. That is, the console commands prefixed by instance: (Karaf 4.x syntax) and the console commands prefixed by admin: (Karaf 2.x syntax) are not supported.

Note

In the Fuse 7.0 GA release, the instance: commands are not removed. This is a known issue.

SwitchYard has been removed in 7.0
Since Fuse 7.0, SwitchYard has been removed, and you should use Apache Camel directly instead. For more detailed information, see the knowledge base article, SwitchYard Support Plan After Releasing Fuse 7.
Support for Fabric8 1.x has been removed in 7.0

Since Fuse 7.0, Fabric8 v1 has been replaced by Fuse on OpenShift (previously, Fuse Integration Services), which includes components of Fabric8 v2 technology. Fuse on OpenShift provides a set of tools and Docker-formatted images that enable development, deployment, and management of integration microservices within OpenShift.

Although Fuse on OpenShift has a different architecture, it fulfills the same provisioning, automation, central configuration and management requirements that Fabric8 v1 provides. For more information, see Fuse on OpenShift Guide.

Camel components for Google App Engine have been removed in 7.0
The Camel components for Google App Engine (camel-gae) have been removed in Fuse 7.0.
Camel jBPM component has been removed in 7.0
The Camel jBPM component (camel-jbpm) has been removed in Fuse 7.0.
Tanuki based wrapper for installing Fuse as a service has been removed in 7.0
The Tanuki based wrapper scripts — generated using the wrapper:install Karaf console command — for installing Fuse as a service have been removed in Fuse 7.0. To install the Apache Karaf container as a service, it is recommended that you use the new karaf-service-*.sh scripts from the bin/contrib directory instead.
Smooks has been removed in 7.0
Since Fuse 7.0, the Smooks component for SwitchYard has been removed.
BPEL has been removed in 7.0
BPEL (based on the Riftsaw project) has been removed from Fuse 7.0. If you are currently using BPEL, it is recommended that you consider migrating to the Red Hat JBoss BPM Suite.
Design Time Governance has been removed in 7.0
The Design Time Governance component has been removed in 7.0.
Runtime Governance has been removed in 7.0
Since Fuse 7.0, the Runtime Governance (RTGov) component has been removed.
S-RAMP has been removed in 7.0
The SOA Repository Artifact Model and Protocol (S-RAMP) component has been removed in Fuse 7.0.
bin/patch script has been removed in 7.0
The bin/patch script (bin\patch.bat on Windows O/S) has been removed in a Fuse 7.0.
Spring Dynamic Modules (Spring-DM) is not supported in 7.0
Spring-DM (which integrates Spring XML with the OSGi service layer in Apache Karaf) is not supported in Fuse 7.0 and you should use the Blueprint framework instead. Using Blueprint XML does not prevent you from using the Java libraries from the Spring framework: the latest version of Spring is compatible with Blueprint.
Apache OpenJPA is not supported in 7.0
The Apache OpenJPA implementation of the Java Persistence API (JPA) is not supported in Fuse7.0. It is recommended that you use the Hibernate implementation instead.

5.8. Replaced in Fuse 7.0

The following features were replaced in Fuse 7.0:

Geronimo transaction manager has been replaced in 7.0
In Fuse 7.0, the Geronimo transaction manager in the Karaf container has been replaced by Narayana.
Jetty container has been replaced in 7.0
In Fuse 7.0, the Jetty container has been replaced by Undertow. Initially, this change applies only to internal use of the Jetty container (for example, in the Karaf container). Other Jetty components might be removed in a future release.

Chapter 6. Unsupported Features in Fuse 7.10

The following features are unsupported in Red Hat Fuse 7.10.

camel-leveldb component is not supported for Fuse on the IBM PowerPC and Z platforms
When Fuse is installed on the IBM PowerPC or IBM Z platforms, the Camel LevelDB component is not supported.
Installation of Fuse Console using the Operator is not supported on OCP 3.11
Installation of the Fuse Console using the Operator is not supported and does not work on OpenShift Container Platform (OCP) 3.11. The recommended way to install Fuse Console on OCP 3.11 is to use templates.
Apache Karaf EclipseLink feature is unsupported
The Apache Karaf EclipseLink feature is not supported in Fuse, because this feature depends on JPA 2.2, while the Karaf container for Fuse 7.2 is aligned with JPA 2.1.
Apache Aries Blueprint Web module is unsupported
The Apache Aries Blueprint Web module is not supported in Fuse. The presence of an example featuring Blueprint Web in the community edition of Apache Camel (provided as a separate download) does not imply that this feature is supported in Fuse.
The PHP scripting language is not supported in Apache Camel on Apache Karaf
The PHP scripting language is not supported in Camel applications on the Apache Karaf container, because there is no OSGi bundle available for PHP. The PHP scripting language is deprecated in Camel applications on the JBoss EAP container and on the Spring Boot container.
The Python scripting language is not supported in Apache Camel on Apache Karaf
The Python scripting language is not supported in Camel applications on the Apache Karaf container, because there is no OSGi bundle available for Python. The Python scripting language is deprecated in Camel applications on the JBoss EAP container and on the Spring Boot container.

Chapter 7. Known Issues

The following subsections describe the known issues in version 7.10.

7.1. CVE Security Vulnerabilities

As a middleware integration platform, Fuse can potentially be integrated with a large number of third-party components. It is not always possible to exclude the possibility that some third-party dependencies of Fuse could have security vulnerabilities. This section documents known common vulnerabilities and exposures (CVEs) related to security that affect third-party dependencies of Fuse 7.10.

CVE-2020-13936 CVE-2020-13936 velocity: arbitrary code execution when attacker is able to modify templates

An attacker that is able to modify Velocity templates may execute arbitrary Java code or run arbitrary system commands with the same privileges as the account running the Servlet container. This applies to applications that allow untrusted users to upload/modify velocity templates running Apache Velocity Engine versions up to 2.2.

Fuse 7.9 (and later) has modified its dependencies to ensure that it uses only the Velocity version (that is, version 2.3) that has been fixed to protect against this security vulnerability. If your application code has any explicit dependencies on the Apache Velocity component, we recommend that you upgrade these dependencies to use the fixed version.

ENTESB-8113 CVE-2018-10237 guava: Unbounded memory allocation in AtomicDoubleArray and CompoundOrdering classes allow remote attackers to cause a denial of service [fuse-7.0.0]

Google Guava versions 11.0 through 24.1 are vulnerable to unbounded memory allocation in the AtomicDoubleArray class (when serialized with Java serialization) and the CompoundOrdering class (when serialized with GWT serialization). An attacker could exploit applications that use Guava and deserialize untrusted data to cause a denial of service — for more details, see CVE-2018-10237.

To avoid this security vulnerability, we recommend that you:

  • Never deserialize an AtomicDoubleArray instance or a CompoundOrdering instance from an unknown source.
  • Avoid using Guava versions 24 and earlier (although in some cases it is not possible to avoid the earlier versions).

To make it easier to avoid the earlier (vulnerable) versions of Guava, Fuse 7.7 (and later) has configured its Maven Bill of Materials (BOM) files for all containers to select Guava 27 by default. This means that if you incorporate a Fuse BOM into your Maven project (by adding a dependency on the BOM to the dependencyManagement section of your POM file) and then specify a dependency on the Guava artifact without specifying an explicit version, the Guava version will default to the version specified in the BOM, which is version 27 for the Fuse 7.7 BOMs.

But there is at least one common use case involving the Apache Karaf (OSGi) container, where it is not possible to avoid using a vulnerable version of Guava: if your OSGi application uses Guava and Swagger together, you are obliged to use Guava 20, because that is the version required by Swagger. Here we explain why this is the case and how to configure your POM file to revert the earlier (vulnerable) Guava 20 library. First, you need to understand the concept of a double OSGi chain.

Double OSGi chain

Bundles in the OSGi runtime are wired together using package constraints (package name + optional version/range) — imports and exports. Each bundle can have multiple imports and usually those imports wire a given bundle with multiple bundles. For example:

BundleA
+-- BundleB
|   +-- BundleCa
+-- BundleCb

Where BundleA depends on BundleB and BundleCb, while BundleB depends on BundleCa. BundleCa and BundleCb should be the same bundle, if the export the same packages, but due to version (range) constraints, BundleB uses (wires to) a different revision/version of BundleC than BundleA.

Rewriting the preceding diagram to reflect what happens when you include dependencies on both Guava and Swagger in an application:

org.jboss.qe.cxf.rs.swagger-deployment
+-- Guava 27
+-- Swagger 1.5
    +-- reflections 0.9.11
        +-- Guava 20

If you try to deploy this bundle configuration, you get the error, org.osgi.framework.BundleException: Uses constraint violation.

Reverting to Guava 20

If your project uses both Guava and Swagger libraries (directly or indirectly), you should configure the maven-bundle-plugin to use an explicit version range (or no range at all) for the Guava bundle import, as follows:

<Import-Package>
    com.google.common.base;version="[20.0,21.0)",
    com.google.common.collect;version="[20.0,21.0)",
    com.google.common.io;version="[20.0,21.0)"
</Import-Package>

This configuration forces your OSGi application to revert to the (vulnerable) Guava 20 library. It is therefore particularly important to avoid deserializing AtomicDoubleArray instances in this case.

CVE-2017-12629 Solr/Lucene -security bypass to access sensitive data - CVE-2017-12629

Apache Solr is a popular open source search platform that uses the Apache Lucene search engine. If your application uses a combination of Apache Solr with Apache Lucene (for example, when using the Camel Solr component), it could be affected by this security vulnerability. Please consult the linked security advisory for more details of this vulnerability and the mitigation steps to take.

Note

The Fuse runtime does not use Apache Solr or Apache Lucene directly. The security risk only arises, if you are using Apache Solr and Apache Lucene together in the context of an integration application (for example, when using the Camel Solr component).

CVE-2021-30129 mina-sshd-core: Memory leak denial of service in Apache Mina SSHD Server

A vulnerability in sshd-core of Apache Mina SSHD allows an attacker to overflow the server causing an OutOfMemory error. This issue affects the SFTP and port forwarding features of Apache Mina SSHD version 2.0.0 and later versions. It was addressed in Apache Mina SSHD 2.7.0

This vulnerability in Apache Mina SSHD was addressed by SSHD-1004, which deprecates certain cryptographic algorithms that have this vulnerability. In Fuse 7.10 on Karaf and Fuse 7.10 on JBoss EAP, these deprecated algorithms are still supported (for reasons of backwards compatibility). However, if you are using one of these deprecated algorithms, it is strongly recommended that you refactor your application code to use a different algorithm instead.

In Fuse 7.10, the default cipher algorithms have changed as follows.

Fuse 7.9Fuse 7.10Deprecated in Fuse 7.10?

aes128-ctr

aes128-ctr

 
 

aes192-ctr

 
 

aes256-ctr

 
 

aes128-gcm@openssh.com

 
 

aes256-gcm@openssh.com

 

arcfour128

arcfour128

yes

aes128-cbc

aes128-cbc

 
 

aes192-cbc

 
 

aes256-cbc

 

3des-cbc

3des-cbc

yes

blowfish-cbc

blowfish-cbc

yes

In Fuse 7.10, the default key exchange algorithms have changed as follows.

Fuse 7.9Fuse 7.10deprecated in 7.10?

diffie-hellman-group-exchange-sha256

diffie-hellman-group-exchange-sha256

 

ecdh-sha2-nistp521

ecdh-sha2-nistp521

 

ecdh-sha2-nistp384

ecdh-sha2-nistp384

 

ecdh-sha2-nistp256

ecdh-sha2-nistp256

 
 

diffie-hellman-group18-sha512

 
 

diffie-hellman-group17-sha512

 
 

diffie-hellman-group16-sha512

 
 

diffie-hellman-group15-sha512

 
 

diffie-hellman-group14-sha256

 

diffie-hellman-group-exchange-sha1

diffie-hellman-group-exchange-sha1

yes

diffie-hellman-group1-sha1

diffie-hellman-group1-sha1

yes

7.2. Fuse Online

The Fuse Online distribution has the following known issues:

ENTESB-17674 Monitoring Fuse Online with Prometheus and Grafana on OCP 4.9 (or later) requires workaround

On OCP 4.9 (or later), the application-monitoring project no longer works. It is a prerequisite for monitoring Fuse Online integrations and infrastructure components with Prometheus and Grafana.

To work around this issue, you can use the built-in monitoring stack (in the openshift-monitoring namespace) to use the openshift-user-workload-monitoring feature and the grafana-operator to use the ops addon as described in the Important notes for Fuse Online section of these release notes.

_ENTESB-17796_CSV parameters are not updated in AtlasMap step

In a Fuse Online integration, if you change the value of a CSV parameter, you must also edit all mapping steps that use that data shape by making some change (for example, add and then remove a constant value) to update the mapping.

Note that Data Mapper support for CSV data is a Technology Preview feature.

ENTESB-15348 Syndesis-jaeger uses unproductized image on OCP 3.11

Since Fuse 7.8, if you are attempting to install Fuse Online on OCP 3.11 with the Jaeger add-on enabled (enhanced activity tracking), it is possible you might encounter the following error:

Unknown desc = toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit

This happens because the productised Jaeger container references Dockerhub images, which are out of Red Hat’s control. To work around this issue, you can either wait until rate limit window times out, or disable the Jaeger add-on.

ENTESB-14518 Jaeger operator installed by Syndesis 1.11 affects other namespaces
Since Fuse 7.8, when you install Fuse 7.8 Online (Syndesis 1.11) on an OpenShift cluster, the Jaeger Operator (which gets installed along with Fuse Online) is configured to manage All namespaces by default. A side effect of this behavior is that, in the case where you already have Fuse 7.7 Online (Syndesis 1.10) installed on a cluster and then you install Fuse 7.8 Online in a different namespace, the Jaeger Operator installed with Fuse 7.8 Online tries to manage the (older) Jaeger instance installed on the Fuse 7.7 Online namespace. The result is that a new syndesis-jaeger pod — in addition to the existing syndesis-jaeger pod — appears in the Fuse 7.7 Online namespace and the new syndesis-jaeger pod enters the CrashLoopBackOff state. The original Fuse 7.7 Online instance is not affected and the crashed syndesis-jaeger pod can be safely ignored.
ENTESB-13966 Discovery of deployed integration API seems disabled but not really
Starting in Fuse 7.7, after creating a new integration containing an API, the integration detail page wrongly implies that 3scale discovery is disabled for this integration. Additionally, the integration detail page does not show the API URL. By clicking this button three times (click Enable, then click Disable, then click Enable), you can resynchronize the page so that 3scale discovery is enabled and the API URL is displayed.

7.3. Fuse on OpenShift

This section lists issues that affect the deployment of Fuse applications on OpenShift. For details of issues affecting specific containers, see also the sections for Spring Boot, Fuse on Apache Karaf, and Fuse on JBoss EAP. The Fuse on OpenShift distribution has the following known issues:

ENTESB-17895 [ Fuse Console ] Upgrade subscription does not update Hawtio
In Fuse 7.10, if you update the Fuse Console by changing the Operator subscription channel to version 7.10, the Fuse Console remains on vesion 7.9. Even if the the Fuse Console containers and pods have the label 7.10, they are still using the 7.9 images. To work around this problem, perform the upgrade by removing the older version of Fuse Console and then making a fresh install of Fuse Console version 7.10.
ENTESB-17861 Apicurito generator cannot generate Fuse Camel Project

In Fuse 7.10, the API Designer (Apicurito) does not work properly, if it is installed via the Apicurito Operator (giving an Invalid Cert Error). To work around this problem:

  1. Open a new tab on https://apicurito-service-generator-apicurito.apps.clusterURL (for fo.49-c it is https://apicurito-service-generator-apicurito.apps.fo-49-c.openshift-aws.rhocf-dev.net).
  2. Accept the certificates.
  3. Switch to the application and click on the generate button again.
ENTESB-17848 fis-image-streams is using non-groupfied API resources (deprecated)

In Fuse 7.10, when installing the image streams for Fuse on OpenShift (for example, using the a command like oc create -n openshift -f ${BASEURL}/fis-image-streams.json) on OCP 4, you could see warning messages like the following:

W1119 13:27:43.408688   22220 shim_kubectl.go:55] Using non-groupfied API resources is deprecated and will be removed in a future release, update apiVersion to "image.openshift.io/v1" for your resource

You can safely ignore these warning messages.

ENTESB-17836 [ Fuse Console ] A newly added route is not displayed in the Camel tree
In Fuse 7.10, after deploying an application, the route (or routes) is not displayed in the Camel tree on the Fuse Console. You can work around this issue by refreshing the page, which should make the route appear.
ENTESB-17741 [ Fuse Console ] Open pod details leads to Page Not Found
In Fuse 7.10, after deploying some quickstarts, if you open the Discover page of the Fuse Console, click on the drop-down menu of the pod (3 dots icon), and then click on Pod detail page, you will get a Page Not Found error.
ENTESB-16814 Monitoring resources are linked wrongly from the documentation
Since Fuse 7.8, the locations of the monitoring resources referenced in section 2.5.2. Setting up Prometheus of the Fuse on OpenShift Guide are incorrect and return a 404 exception. This documented procedure will be fixed in a post-GA documentation update.

7.4. Fuse on Apache Karaf

Fuse on Apache Karaf has the following known issues:

ENTESB-18018 Fuse 7.10 AR10 offliner validation problems
In Fuse 7.10, two of the quickstarts do not get installed with the offliner tool: camel-sap and camel-cxf-contract-first. The missing artifacts are available from the (online) Red Hat Maven repository, however.
ENTESB-17819 camel-grpc does not work on fuse-karaf
In Fuse 7.10, the Camel GRPC component does not work on the Apache Karaf container. This will be fixed in a later release of Fuse.
ENTESB-16417 Credential store is using PBEWithSHA1AndDESede by default
The security API in OpenJDK 8u292 and in OracleJDK 1.8.0_291 returns an incomplete list of security providers, which causes the credential store in Apache Karaf to fail (because the required security provider appears to be unavailable). The underlying issue that causes this problem is https://bugs.openjdk.java.net/browse/JDK-8249906. We recommend that you use the earlier OpenJDK version, OpenJDK 8u282, or the later OpenJDK version, OpenJDK 8u302, which do not have this bug.
ENTESB-16526 fuse-karaf on Windows cannot restart during patch:install

While running patch:install in the Apache Karaf container on the Windows platform, under certain circumstances you might encounter the following error when the patch:install command attempts an automatic restart of the container:

Red Hat Fuse starting up. Press Enter to open the shell now...
100% [========================================================================]
Karaf started in 18s. Bundle stats: 235 active, 235 total
'.tmpdir' is not recognized as an internal or external command,
operable program or batch file.
There is a Root instance already running with name ~14 and pid ~13. If you know what you are doing and want to force the run anyway, SET CHECK_ROOT_INSTANCE_RUNNING=false and re run the command.

If you encounter this error, simply restart the Karaf container manually.

ENTESB-8140 Start level of hot deploy bundles is 80 by default

Starting in the Fuse 7.0 GA release, in the Apache Karaf container the start level of hot deployed bundles is 80 by default. This can cause problems for the hot deployed bundles, because there are many system bundles and features that have the same start level. To work around this problem and ensure that hot deployed bundles start reliably, edit the etc/org.apache.felix.fileinstall-deploy.cfg file and change the felix.fileinstall.start.level setting as follows:

felix.fileinstall.start.level = 90
ENTESB-7664 Installing framework-security feature kills karaf

The framework-security OSGi feature must be installed using the --no-auto-refresh option, otherwise this feature will shut down the Apache Karaf container. For example:

feature:install -v --no-auto-refresh framework-security

7.5. Fuse on JBoss EAP

Fuse on JBoss EAP has the following known issues:

ENTESB-13168 Camel deployment on EAP domain mode is not working on Windows
Starting in Fuse 7.6.0, for Fuse on JBoss EAP, the Camel subsystem cannot be deployed on JBoss EAP in domain mode on Windows OS.

7.6. Fuse Tooling

Fuse Tooling has the following known issues:

ENTESB-17705 [ Hawtio ] Logout button disappears
In Fuse 7.10, after logging in and logging out several times in a row, the Logout button is not shown. To work around this issue, you can refresh the page one or more times and the Logout button should reappear.
_FUSETOOLS-3567_Fuse 7.10.0.AR7 on Karaf cannot be started in CodeReady Studio with Java 11
Starting with CodeReady Studio 12.22, Fuse Tooling will support it.

7.7. Apache Camel

Apache Camel has the following known issues:

ENTESB-15343 XSLT component not working properly with IBM1.8 JDK
In Fuse 7.8, the Camel XSLT component does not work properly with the IBM 1.8 JDK. The problem occurs because the underlying Apache Xerces implementation of XSLT does not support the javax.xml.XMLConstants#FEATURE_SECURE_PROCESSING property (see XERCESJ-1654).
ENTESB-11060 [ camel-linkedin ] V1 API is no longer supported
Since Fuse 7.4.0, the Camel LinkedIn component is no longer able to communicate with the LinkedIn server, because it is implemented using the LinkedIn Version 1.0 API, which is no longer supported by LinkedIn. The Camel LinkedIn component will be updated to use the Version 2 API in a future release of Fuse.
ENTESB-7469 Camel Docker component cannot use Unix socket connections on EAP
Since Fuse 7.0, the camel-docker component can connect to Docker only through its REST API, not through UNIX sockets.
ENTESB-5231 PHP script language does not work
The PHP scripting language is not supported in Camel applications on the Apache Karaf container, because there is no OSGi bundle available for PHP.
ENTESB-5232 Python language does not work
The Python scripting language is not supported in Camel applications on the Apache Karaf container, because there is no OSGi bundle available for Python.
ENTESB-2443 Google Mail API - Sending of messages and drafts is not synchronous
When you send a message or draft, the response contains a Message object with an ID. It may not be possible to immediately get this message via another call to the API. You may have to wait and retry the call.
ENTESB-2332 Google Drive API JSON response for changes returns bad count of items for the first page
Google Drive API JSON response for changes returns bad count of items for the first page. Setting maxResults for a list operation may not return all the results in the first page. You may have to go through several pages to get the complete list (that is by setting pageToken on new requests).

Chapter 8. Fixed Issues in Fuse 7.10

The following sections list the issues that have been fixed in Fuse 7.10:

8.1. Enhancements in Fuse 7.10

The following table lists the enhancements in Fuse 7.10.

Table 8.1. Fuse 7.10 Enhancements

IssueDescription

ENTESB-17591

Update AtlasMap to 2.3.0

ENTESB-17610

Update AtlasMap to 2.3.1

ENTESB-17355

Update AtlasMap to 2.3.0-M.3

ENTESB-16734

RHEL8 based image for syndesis-db

ENTESB-16809

Camel Clients Getting Started with Managed Kafka

ENTESB-16517

[ FoO ] Plan for API deprecation in OCP 4.9 (Fuse 7.10)

ENTESB-17694

[ Fuse Console ] Make Operator Metadata image multiarch

ENTESB-17290

[ Build ] UI deprecated dependencies update

ENTESB-17405

Add Java 11 Maven profile to Fuse on OpenShift quickstarts

ENTESB-14379

Fuse Online: Upgrade to Patternfly 4.4.x and React 17

ENTESB-16485

[ Fuse Console ] Create CVP for Fuse Console Operator

ENTESB-14750

Provide metering labels for Fuse on Openshift Console (Operator)

ENTESB-15863

Default CR options should be consistent and user-friendly

ENTESB-17662

Update AtlasMap to 2.3.2

ENTESB-17480

Fuse Online 7.10 Component Alignment

ENTESB-17615

Upgrade to EAP 7.4.2.GA-redhat-00002

ENTESB-17806

Upgrade to camel-2.23.2.fuse-7_10_0-00017

ENTESB-15485

Backport CAMEL-15971 - SimpleFileLanguage always null due to DummyExchange

ENTESB-15928

CSV support in Fuse Online

ENTESB-17236

FMP Removal [Fuse 7.10]

8.2. Feature requests in Fuse 7.10

The following table lists the features requests in Fuse 7.10.

Table 8.2. Fuse 7.10 Feature Requests

IssueDescription

ENTESB-17153

Set environment variables for syndesis-oauthproxy

ENTESB-14559

allow labeling the integrations from when saving and publishing them

8.3. Component Upgrades in Fuse 7.10

The following table lists the component upgrades in Fuse 7.10.

Table 8.3. Fuse 7.10 Component Upgrades

IssueDescription

ENTESB-17359

Upgrade protobuf to 3.10.0

ENTESB-17320

Upgrade to Netty 4.1.67.Final-redhat-00001

ENTESB-17270

Upgrade to 7.4.1.GA-redhat-00003

ENTESB-17322

Upgrade to Narayana 5.11.3.Final-redhat-00001

ENTESB-17321

Upgrade to Hibernate 5.3.21.Final-redhat-00001

ENTESB-17319

Upgrade to BouncyCastle 1.69

ENTESB-17311

Upgrade to ASM 9.2

ENTESB-17335

Upgrade to Jolokia 1.7.1.redhat-00001

ENTESB-17323

Upgrade to RH-SSO 7.4.9 / Keycloak 9.0.15.redhat-00002

ENTESB-17318

Upgrade to Spring Boot 2.3.12.RELEASE

ENTESB-17704

Upgrade to camel-2.23.2.fuse-7_10_0-00015

8.4. Bugs resolved in Fuse 7.10, 7.10.1, and 7.10.2

The following tables list the resolved bugs in Fuse 7.10, 7.10.1, and 7.10.2.

Table 8.4. Fuse 7.10.2 Resolved Bugs

IssueDescription

ENTESB-18800

CVE-2022-22965 Spring4Shell: Unsafe parameter binding flaw which could allow an attacker to pass malicious requests to certain parameters and possibly gain access to normally-restricted functionality within the Java Virtual Machine [fuse-7]

Table 8.5. Fuse 7.10.1 Resolved Bugs

IssueDescription

ENTESB-17986

CVE-2021-4104 log4j: Remote code execution in Log4j 1.x when application is configured to use JMSAppender [fuse-7]

ENTESB-18312

CVE-2022-23307 log4j: Unsafe deserialization flaw in Chainsaw log viewer [fuse-7]

ENTESB-18326

CVE-2022-23302 log4j: Remote code execution in Log4j 1.x when application is configured to use JMSSink [fuse-7]

ENTESB-18327

CVE-2022-23305 log4j: SQL injection in Log4j 1.x when application is configured to use JDBCAppender [fuse-7]

Table 8.6. Fuse 7.10 Resolved Bugs

IssueDescription

ENTESB-17968

CVE-2021-44228 log4j-core: Remote code execution in Log4j 2.x when logs contain an attacker-controlled string value [ fuse-7 ]

ENTESB-17597

[ Hawtio ] Spring Boot 2 fails on Windows machine

ENTESB-17588

Invalid authentication type for Postgresql

ENTESB-17603

Camel-infinispan not working on karaf + jdk11

ENTESB-17590

wildfly-camel build fails with camel-2.23.2.fuse-7_10_0-00012

ENTESB-17646

jdk11 + karaf + cxf codewrtier instance issue

ENTESB-17642

Not possible to install feature hibernate-validator-groovy

ENTESB-17640

Quickstart spring-boot-camel-xa contains wrong image reference for jdk11

ENTESB-17636

Misalignments with Component alignment document in 7.10.AR6

ENTESB-17643

Collapse Repeating Delimiters checkbox is not shown right after a mapping is created

ENTESB-17708

Move source jar maven plugin to prod profile for quickstarts

ENTESB-17700

No Class Def Found errors when client bin command in Karaf

ENTESB-17660

Karaf cannot start when Elytron is set as PersistenceManager

ENTESB-17414

Fuse console won’t start on ppc64le

ENTESB-17409

Missing fuse-karaf-openshift-jdk11-rhel8 in fis-image-streams.json

ENTESB-17445

fuse-karaf + jdk11 - javax.xml.ws wrong Import-package version

ENTESB-17466

Apicurito 7.10 bundle uses 7.9 channel

ENTESB-17527

Camel 2.23 downstream failures

ENTESB-17654

Client script does not work on Karaf

ENTESB-17377

DataMapper constant can be saved without any values

ENTESB-17226

PubSubIntegrationTest fails with Invalid grant: account not found

ENTESB-16765

Fuse on Karaf using jdk11 / open-jdk11 gives NoClassDefFoundError while blueprint installation

ENTESB-16504

[ Fuse Console ] Spring Boot Camel quickstart fails

ENTESB-16987

[ Hawtio ] Broken layout for drop-down menu in OSGi → Features

ENTESB-16990

DataMapper multi spaces delimiter in split transformation behaves as "double spaces" delimiter.

ENTESB-16425

Spring Boot Camel AMQ S2I quickstart has unreachable link in Readme.adoc

ENTESB-16283

Missing metering labels on spring-boot-camel-xa quickstart

ENTESB-17611

Camel 2.23 downstream failures with openjdk11

ENTESB-17281

Missing API Connector review page when API contains error

ENTESB-17253

Quickstart spring-boot-camel-amq still contains README.md file

ENTESB-17411

Fuse Online 7.10 bundle can’t create an index

ENTESB-17399

AtlasMap exception in an integration

ENTESB-17406

Old metering labels in build Fuse Online 7.10 AR4

ENTESB-17478

[ Fuse Console ] Metadata image points to fuse console operator 1.9 image

ENTESB-17416

CSV Instance Parameters are disappeared during edit webhook step

ENTESB-17282

Fuse Online UI enhancement after PF update

ENTESB-17280

Maven-deploy-plugin version alignment

ENTESB-17328

Wrong fuse-karaf productization version

ENTESB-17329

Wrong metadata values, labels, appName, metering labels in quickstarts templates

ENTESB-17308

Camel Hystrix component doesn’t work on karaf

ENTESB-17396

Misalignments with Component alignment document in 7.10.AR4

ENTESB-17385

hawtio 2 should not simply remove hawtio-log Karaf feature (and MBean)

ENTESB-17341

nodeAffinity and toleration are not set in an integration pod

ENTESB-17337

Invalid JSON template file for Spring Boot Rhosak Quickstart

ENTESB-17354

Upgrade Fuse Online 7.9 → 7.10 doesn’t work on OCP 3.11

ENTESB-17343

Linked documentation is for version 7.9 instead of version 7.10

ENTESB-17146

RedisConstants.COMMAND header is not take into consideration when using GET command

ENTESB-17332

Wrong Karaf Framework version in Fuse Karaf Images

ENTESB-17330

Wrong image reference in Archetypes

ENTESB-17256

Missing ServiceAccount labels in S2I SpringBoot Rhosak Quickstart

ENTESB-17251

View logs links points to an unexisting page

ENTESB-13112

Autodiscovery AMQ streams web element doesn’t have data-testid

ENTESB-14032

Syndesis/Fuse online logo does not link to the home page

ENTESB-17091

Missing metering labels on spring-boot-camel-rhosak quickstart

ENTESB-16482

Illegal reflective access by org.jolokia.util.ClassUtil while running quickstarts with JDK11

ENTESB-16256

Camel springboot BOM references non-existent artifact

ENTESB-12106

Remove the deployIntegrations flag from the CR

ENTESB-16037

Creating API Client Connector and Connection - duplicate username and password section

ENTESB-16285

Wrong labels on fuse circuit breaker booster don’t allow services and routes to work

ENTESB-15153

500 response isnt displayed in the validation UI page

ENTESB-17749

Misalignments with Component alignment document in 7.10.AR7

ENTESB-17780

Camel 2.23 downstream failures in 7.10.AR7

ENTESB-17773

spring-boot-camel-drools route exception

ENTESB-17744

Karaf quickstarts does not support java 11

ENTESB-17748

Deleted or renamed ENVs are still presented in the integration pod

ENTESB-17734

Deleting CSV parameters works until the second attempt

ENTESB-17165

Istio Booster - status

ENTESB-17746

Wrong git reference for spring-boot-camel-rhosak in application template

ENTESB-17762

Authentication failure on Karaf with public key while using ssh feature

ENTESB-17671

Camel 2.23 downstream failures

ENTESB-17707

ClassCastException with com.mongodb.client.MongoClient

ENTESB-17706

libthrift-0.14.0.redhat-00001 not compatible with cassandra

ENTESB-17776

[Apicurito] Metadata points to older generator image

ENTESB-16892

Elastic Search Rest cannot be used on SpringBoot

ENTESB-17750

4 Features not installed

ENTESB-17402

Wrong metadata values, labels, appName, metering labels in pom.xml

ENTESB-17815

History command does not show previous history

ENTESB-17769

CVE-2020-13949, ensure Syndesis contains correct version of libthrift

ENTESB-17699

CVE-2020-27218, Ensure that Syndesis is using fixed net.sf.ehcache:ehcache

ENTESB-17790

CVE-2021-29425, Ensure that Syndesis is using fixed commons-io

ENTESB-17598

SSH client libraries incompatible with camel-ftp and camel-jsch

ENTESB-17137

Cannot access Fuse Online on disconnected environment

ENTESB-17890

Dependency version of springboot is missing in a particular integration build

ENTESB-17885

Integration with OData (v2 only) connector is not able to start

ENTESB-17144

Fuse Camel project generated by Apicurito Generator not exposes management port

ENTESB-17800

karaf-camel-amq quickstart restarts camel context during startup

ENTESB-17300

Fuse Online image ( 7. 10 ) builds are failing due to wrong arches: arm64, ppc64le, s390x

ENTESB-17697

CVE-2021-37136, Ensure that Syndesis is using fixed io.netty:netty-codec

ENTESB-17770

CVE-2021-3629, ensure Syndesis contains correct version of undertow

ENTESB-17772

CVE-2021-20220, ensure Syndesis contains correct versions of undertow

ENTESB-17771

CVE-2021-3690, ensure Syndesis contains correct version of undertow

ENTESB-17632

CVE-2020-27223, Ensure that Syndesis is using fixed org.eclipse.jetty:jetty-http

ENTESB-17683

CVE-2021-27568, Ensure that Syndesis is using fixed net.minidev:json-smart

ENTESB-17853

AR8 Fuse Online bundle replaces an older version

ENTESB-17765

CVE-2021-37714, ensure syndesis contains correct version of jsoup

ENTESB-17709

Camel 2.23.2 downstream failure on s390x

ENTESB-17607

Salesforce authentication error

ENTESB-16790

Update all productized xml examples to use a correct xsd

ENTESB-17767

Integration with MongoDB connector is not able to start

ENTESB-17847

The repository cache contains corrupt maven-tooling JAR

ENTESB-17811

Creating custom OpenAPI clients broken

ENTESB-17757

SSH client libraries incompatible with camel-ftp and camel-jsch

ENTESB-17840

S2I Spring Boot Camel Rhosak quickstart has wrong selector in template

ENTESB-17786

Use OpenShift Maven Plugin instead of Fabric8 Maven Plugin in Fuse Apicurio Generator

ENTESB-17618

ZookeeperIntegrationTest intermittently fails in Jenkins

ENTESB-17379

Native libraries for SAP

ENTESB-17668

After CRD is updated on OCP3, oc get syndesis don’t work for a couple of minutes

ENTESB-17858

AR9 Fuse smoke tests failing

ENTESB-17766

CVE-2021-34428, ensure Syndesis contains correct versions of jetty

ENTESB-17877

AR8 Apicurito bundle replaces an older version

ENTESB-17791

Artifacts missing when using offliner for Fuse 7.10 AR7

ENTESB-16971

MongoDb3 component always connects to localhost

Legal Notice

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.