Chapter 1. Red Hat build of Apache Camel for Quarkus 3.2 release notes
1.1. Red Hat build of Apache Camel for Quarkus features Copy linkLink copied to clipboard!
- Fast startup and low RSS memory
- Using the optimized build-time and ahead-of-time (AOT) compilation features of Quarkus, your Camel application can be pre-configured at build time resulting in fast startup times.
- Application generator
- Use the Quarkus application generator to bootstrap your application and discover its extension ecosystem.
- Highly configurable
All the important aspects of a Red Hat build of Apache Camel for Quarkus application can be set up programmatically with CDI (Contexts and Dependency Injection) or by using configuration properties. By default, a CamelContext is configured and automatically started for you.
Check out the Configuring your Quarkus applications by using a properties file guide for more information on the different ways to bootstrap and configure an application.
- Integrates with existing Quarkus extensions
- Red Hat build of Apache Camel for Quarkus provides extensions for libraries and frameworks that are used by some Camel components which inherit native support and configuration options.
1.2. Supported platforms, configurations, databases, and extensions Copy linkLink copied to clipboard!
- For information about supported platforms, configurations, and databases in Red Hat build of Apache Camel for Quarkus version 3.2, see the Supported Configuration page on the Customer Portal (login required).
- For a list of Red Hat Red Hat build of Apache Camel for Quarkus extensions and the Red Hat support level for each extension, see the Extensions Overview chapter of the Red Hat build of Apache Camel for Quarkus Reference (login required).
1.3. BOM files for Red Hat build of Apache Camel for Quarkus Copy linkLink copied to clipboard!
-
To configure your Red Hat Red Hat build of Apache Camel for Quarkus version 3.2 projects to use the supported extensions, use the latest Bill Of Materials (BOM) version
3.2.10.Final-redhat-00002or newer, from the Redhat Maven Repository.
For more information about BOM dependency management, see Developing Applications with Red Hat build of Apache Camel for Quarkus
1.4. Technology preview extensions Copy linkLink copied to clipboard!
Items designated as Technology Preview in the Extensions Overview chapter of the Red Hat build of Apache Camel for Quarkus Reference have limited supportability, as defined by the Technology Preview Features Support Scope.
1.5. Known issues Copy linkLink copied to clipboard!
1.5.1. SAP Extension Camel Quarkus limitations Copy linkLink copied to clipboard!
The SAP extension does not support the packaging type uber-jar, which causes the application to throw a runtime exception similar to this:
Caused by: java.lang.ExceptionInInitializerError: JCo initialization failed with java.lang.ExceptionInInitializerError: Illegal JCo archive "sap-1.0.0-SNAPSHOT-runner.jar". It is not allowed to rename or repackage the original archive "sapjco3.jar".
Caused by: java.lang.ExceptionInInitializerError: JCo initialization failed with java.lang.ExceptionInInitializerError: Illegal JCo archive "sap-1.0.0-SNAPSHOT-runner.jar". It is not allowed to rename or repackage the original archive "sapjco3.jar".
1.5.2. JVM-only support tag missing Copy linkLink copied to clipboard!
Currently, http://code.quarkus.redhat.com does not list the correct support information for the following extensions:
| Extension | Artifact | JVM Support Level | Native Support Level | Description |
|---|---|---|---|---|
| Azure-servicebus | Technology Preview | None | Send and receive messages to/from Azure Service Bus. | |
| SAP | Production Support | None | Provides SAP Camel Component. | |
| SNMP | Production Support | None | Receive traps and poll SNMP (Simple Network Management Protocol) capable devices. |
1.5.3. Other known issues Copy linkLink copied to clipboard!
- CEQ-6085 Support extension: camel-quarkus-micrometer
If you are migrating to
micrometerfromsmallrye-metrics, you may need to manually define some beans as scoped.In
smallrye-metrics, classes that are registered for metrics (for example with@COUNTED,@METRIC), but not registered as scoped beans, are registered automatically. This does not happen inmicrometer.In
micrometeryou need to manually register beans accessed via CDI, by for example adding a@Dependentannotation.- CEQ-5705 Camel-quarkus-snmp not supported in Native
-
In Red Hat build of Apache Camel for Quarkus we support the
camel-quarkus-snmpcomponent in JVM mode only.
1.6. Known CXF issues Copy linkLink copied to clipboard!
The following issues remain with CXF for this release.
1.6.1. Supported extensions Copy linkLink copied to clipboard!
Currently, only these quarkus-cxf extensions are supported:
Implicitly, as transitive dependencies of camel-quarkus-cxf-soap:
-
quarkus-cxf -
quarkus-cxf-rt-features-logging
Further, you can add the following supported extensions if you need WS-Security or other associated functionality:
-
quarkus-cxf-rt-ws-security -
quarkus-cxf-services-sts -
quarkus-cxf-xjc-plugins
1.6.1.1. WS-ReliableMessaging Copy linkLink copied to clipboard!
Full support for CXF WS-ReliableMessaging is currently unavailable, and it remains in Technology Preview in version 3.2.
1.6.2. Possible DoS vector with CXF clients using java.net.http.HttpClient Copy linkLink copied to clipboard!
If your CXF clients are using java.net.http.HttpClient as the underlying HTTP client, then due to CXF issue, the application may crash if many clients are created, as their threads do not terminated.
The problem occurs with java.net.http.HttpClient when CXF clients is created repeatedly, for example per request. If you keep the clients throughout the whole lifespan of the application, this issue does not occur.
Since Apache Camel for Quarkus 3.2.0 and Quarkus CXF 2.2.3, the selection of the HTTP client implementation for some specific CXF client is controlled via quarkus.cxf.client.yourClient.http-conduit-factory property. By default, the CXF clients created by Quarkus CXF use java.net.HttpURLConnection as an HTTP client and thus, this issue does not occur by default. This issue may occur if you set quarkus.cxf.client.yourClient.http-conduit-factory=HttpClientHTTPConduitFactory.
1.6.2.1. Mitigation of the DoS vector Copy linkLink copied to clipboard!
-
Only use
java.net.http.HttpClient-backed CXF clients if you are absolutely certain that the clients are only created once during the lifespan of the application. -
Use CXF clients backed by different HTTP client implementations such as HC5 or
java.net.HttpURLConnection.
1.7. Important notes Copy linkLink copied to clipboard!
1.7.1. The javax to jakarta Package Namespace Change Copy linkLink copied to clipboard!
The Java EE move to the Eclipse Foundation and the establishment of Jakarta EE, since Jakarta EE 9, packages used for all EE APIs have changed to jakarta.*
Code snippets in documentation have been updated to use the jakarta.* namespace, but you of course need to take care and review your own applications.
This change does not affect javax packages that are part of Java SE.
When migrating applications to EE 10, you need to:
-
Update any import statements or other source code uses of EE API classes from the
javaxpackage tojakarta. -
Change any EE-specified system properties or other configuration properties whose names begin with
javax.to begin withjakarta.. -
Use the
META-INF/services/jakarta.[rest_of_name]name format to identify implementation classes in your applications that use the implement EE interfaces or abstract classes bootstrapped with thejava.util.ServiceLoadermechanism.
1.7.1.1. Migration tools Copy linkLink copied to clipboard!
- Source code migration: How to use Red Hat Migration Toolkit for Auto-Migration of an Application to the Jakarta EE 10 Namespace
- Bytecode transforms: For cases where source code migration is not an option, the open source Eclipse Transformer
Additional resources
- Background: Update on Jakarta EE Rights to Java Trademarks
- Red Hat Customer Portal: Red Hat JBoss EAP Application Migration from Jakarta EE 8 to EE 10
- Jakarta EE: Javax to Jakarta Namespace Ecosystem Progress
1.7.2. Java Copy linkLink copied to clipboard!
- Minimum Java version - JDK 17
- Red Hat build of Apache Camel for Quarkus version 3.2 requires JDK 17 or newer.
- Support for AdoptiumJDK
- Red Hat build of Apache Camel for Quarkus version 3.2 includes support for AdoptiumJDK 17.
1.7.3. Upgrades Copy linkLink copied to clipboard!
- Camel upgraded from version 3.14.2 to version 3.18.6
Red Hat build of Apache Camel for Quarkus version 3.2 has been upgraded from Camel version 3.18.6 to Camel version 4.0.0. For additional information about each intervening Camel patch release, refer to the following:
- Apache Camel 3.18.7 Release Notes
- Apache Camel 3.18.8 Release Notes
- Apache Camel 3.19.0 Release Notes
- Apache Camel 3.20.0 Release Notes
- Apache Camel 3.20.1 Release Notes
- Apache Camel 3.20.2 Release Notes
- Apache Camel 3.20.3 Release Notes
- Apache Camel 3.20.4 Release Notes
- Apache Camel 3.20.5 Release Notes
- Apache Camel 3.20.6 Release Notes
- Apache Camel 3.20.7 Release Notes
- Apache Camel 3.20.8 Release Notes
- Apache Camel 3.21.0 Release Notes
- Apache Camel 3.21.1 Release Notes
- Apache Camel 3.21.2 Release Notes
- Apache Camel 4.0.0 Release Notes
- Camel Quarkus upgraded from version 2.7 to version 2.13
Red Hat build of Apache Camel for Quarkus version 3.2 has been upgraded from Camel Quarkus version 2.13 to Camel Quarkus version 3.2. For additional information about each intervening Camel Quarkus patch release, refer to the following:
- Apache Camel Quarkus 2.13.0 Release Notes
- Apache Camel Quarkus 2.13.1 Release Notes
- Apache Camel Quarkus 2.13.2 Release Notes
- Apache Camel Quarkus 2.13.3 Release Notes
- Apache Camel Quarkus 2.14.0 Release Notes
- Apache Camel Quarkus 2.15.0 Release Notes
- Apache Camel Quarkus 2.16.0 Release Notes
- Apache Camel Quarkus 3.2.0 Release Notes
1.8. Resolved issues Copy linkLink copied to clipboard!
The following table lists known issues that were affecting Red Hat build of Apache Camel for Quarkus, which have been fixed in Red Hat build of Apache Camel for Quarkus version 3.2.
Resolved issues
- CEQ-7591
- Quarkus CXF: Slow transfer of large responses due to small default chunk size
- CEQ-7086
- CEQ Getting Started Guide does not tell users what Maven repositories to configure
- CEQ-6604
- Update CEQ migration instructions with camel-cxf-soap namespace changes
- CEQ-6217
- Templated route fails if it is processed before route template
- CEQ-6263
- OpenTelemetry traces not being generated in sequence
- CEQ-6203
- CQ with CXF on OpenShift requires quarkus.cxf.path property
- CEQ-4878
- JMS components connection pooling (generic client, full support)
- CEQ-1203
- Platform Support : KNative/Serverless deployments
1.8.1. Previous releases Copy linkLink copied to clipboard!
For details of issues resolved between Camel Quarkus 2.13 and Camel Quarkus 3.2, see the Release Notes for each patch release.
1.9. Deprecated features in Red Hat build of Apache Camel for Quarkus version 3.2 Copy linkLink copied to clipboard!
There are no deprecated features in Red Hat build of Apache Camel for Quarkus version Red Hat build of Apache Camel for Quarkus.
1.10. Extensions removed in Red Hat build of Apache Camel for Quarkus version 3.2 Copy linkLink copied to clipboard!
The following table lists the extensions added in this release of Red Hat build of Apache Camel for Quarkus version Red Hat build of Apache Camel for Quarkus .
| Extension | Artifact | Description | Note |
|---|---|---|---|
| MicroProfile Metrics |
| Expose metrics from Camel routes. |
1.11. Extensions added in Red Hat build of Apache Camel for Quarkus version 3.2 Copy linkLink copied to clipboard!
The following table lists the extensions added in this release of Red Hat build of Apache Camel for Quarkus version Red Hat build of Apache Camel for Quarkus .
| Extension | Artifact | Description | Note |
|---|---|---|---|
| AMQP |
| Messaging with AMQP protocol using Apache QPid Client. | |
| Azure-servicebus |
| Send and receive messages to/from Azure Service Bus. | |
| CLI-connector |
| Runtime adapter connecting with Camel CLI | |
| Crypto |
| Sign and verify exchanges using the Signature Service of the Java Cryptographic Extension (JCE). | |
| GRPC |
| Expose gRPC endpoints and access external gRPC endpoints. | |
| JDBC |
| ||
| Language |
| ||
| LDAP |
| Perform searches on LDAP servers. | |
| Management |
| JMX management strategy and associated managed resources. | |
| Mapstruct |
| Type Conversion using Mapstruct | |
| Micrometer |
| Collect various metrics directly from Camel routes using the Micrometer library. | |
| Minio |
| Store and retrieve objects from Minio Storage Service using Minio SDK. | |
| Mybatis |
| Performs a query, poll, insert, update or delete in a relational database using MyBatis. | |
| Netty-http |
| Netty HTTP server and client using the Netty 4.x. | |
| SAP |
| Provides SAP Camel Component. | |
| Saxon |
| Query and/or transform XML payloads using XQuery and Saxon. | |
| Splunk |
| Publish or search for events in Splunk. | |
| Vertx-http |
| ||
| Vertx-websocket |
| Camel WebSocket support with Vert.x | |
| XSLT-Saxon |
| Transform XML payloads using an XSLT template using Saxon. |
1.12. Extensions with changed support in Red Hat build of Apache Camel for Quarkus version 3.2 Copy linkLink copied to clipboard!
The following table lists the extensions that have changed support levels in this release of Red Hat build of Apache Camel for Quarkus version Red Hat build of Apache Camel for Quarkus.
| Extension | Artifact | Description | Note |
|---|---|---|---|
| AWS2-CW |
| Sending metrics to AWS CloudWatch using AWS SDK version 2.x. | |
| CXF-soap |
| Expose SOAP WebServices using Apache CXF or connect to external WebServices using CXF WS client. | |
| Telegram |
| Send and receive messages acting as a Telegram Bot Telegram Bot API. | |
| XML IO DSL |
| An XML stack for parsing XML route definitions. | |
| Yaml-dsl |
| An YAML stack for parsing YAML route definitions |
For information about support levels, see Red Hat build of Apache Camel for Quarkus Reference
1.13. Data formats added in Red Hat build of Apache Camel for Quarkus version 3.2 Copy linkLink copied to clipboard!
The following table lists the data formats that have been added in this release of Red Hat build of Apache Camel for Quarkus version 3.2.
| Extension | Artifact | Description |
|---|---|---|
| JAXP |
| XML JAXP type converters and parsers |