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 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 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 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-00002 or 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 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 1.5.1. SAP Extension Camel Quarkus limitations 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". 1.5.2. JVM-only support tag missing 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 camel-quarkus-azure-servicebus Technology Preview None Send and receive messages to/from Azure Service Bus. SAP camel-quarkus-sap Production Support None Provides SAP Camel Component. SNMP camel-quarkus-snmp Production Support None Receive traps and poll SNMP (Simple Network Management Protocol) capable devices. 1.5.3. Other known issues CEQ-6085 Support extension: camel-quarkus-micrometer If you are migrating to micrometer from smallrye-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 in micrometer . In micrometer you need to manually register beans accessed via CDI, by for example adding a @Dependent annotation. CEQ-5705 Camel-quarkus-snmp not supported in Native In Red Hat build of Apache Camel for Quarkus we support the camel-quarkus-snmp component in JVM mode only. 1.6. Known CXF issues The following issues remain with CXF for this release. 1.6.1. Supported extensions 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 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 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 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 1.7.1. The javax to jakarta Package Namespace Change 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. Note 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 javax package to jakarta . Change any EE-specified system properties or other configuration properties whose names begin with javax. to begin with jakarta. . 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 the java.util.ServiceLoader mechanism. 1.7.1.1. Migration tools 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 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 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 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. releases 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 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 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 . Table 1.1. Removed extensions Extension Artifact Description Note MicroProfile Metrics camel-quarkus-microprofile-metrics Expose metrics from Camel routes. 1.11. Extensions added in Red Hat build of Apache Camel for Quarkus version 3.2 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 . Table 1.2. Added extensions Extension Artifact Description Note AMQP camel-quarkus-amqp Messaging with AMQP protocol using Apache QPid Client. Azure-servicebus camel-quarkus-azure-servicebus Send and receive messages to/from Azure Service Bus. CLI-connector camel-quarkus-cli-connector Runtime adapter connecting with Camel CLI Crypto camel- quarkus-crypto Sign and verify exchanges using the Signature Service of the Java Cryptographic Extension (JCE). GRPC camel-quarkus-grpc Expose gRPC endpoints and access external gRPC endpoints. JDBC camel-quarkus-jdbc Language camel-quarkus-language LDAP camel-quarkus-ldap Perform searches on LDAP servers. Management camel-quarkus-management JMX management strategy and associated managed resources. Mapstruct camel-quarkus-mapstruct Type Conversion using Mapstruct Micrometer camel-quarkus-micrometer Collect various metrics directly from Camel routes using the Micrometer library. Minio camel-quarkus-minio Store and retrieve objects from Minio Storage Service using Minio SDK. Mybatis camel-quarkus-mybatis Performs a query, poll, insert, update or delete in a relational database using MyBatis. Netty-http camel-quarkus-netty-http Netty HTTP server and client using the Netty 4.x. SAP camel-quarkus-sap Provides SAP Camel Component. Saxon camel-quarkus-saxon Query and/or transform XML payloads using XQuery and Saxon. Splunk camel-quarkus-splunk Publish or search for events in Splunk. Vertx-http camel-quarkus-vertx-http Vertx-websocket camel-quarkus-vertx-websocket Camel WebSocket support with Vert.x XSLT-Saxon camel-quarkus-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 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. Table 1.3. Extensions with changed support Extension Artifact Description Note AWS2-CW camel-quarkus-aws2-cw Sending metrics to AWS CloudWatch using AWS SDK version 2.x. CXF-soap camel-quarkus-cxf-soap Expose SOAP WebServices using Apache CXF or connect to external WebServices using CXF WS client. Telegram camel-quarkus-telegram Send and receive messages acting as a Telegram Bot Telegram Bot API. XML IO DSL camel-quarkus-xslt-saxon An XML stack for parsing XML route definitions. Yaml-dsl camel-quarkus-yaml-dsl An YAML stack for parsing YAML route definitions Note 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 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. Table 1.4. Added data formats Extension Artifact Description JAXP camel-quarkus-jaxp XML JAXP type converters and parsers

Commands:
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".