You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2025/01/17 18:05:47 UTC

(camel-karaf) branch essobedo/DPE-642/add-groovy-sub-projects created (now dc4130a54)

This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a change to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git


      at dc4130a54 fix(DPE-642): Add Groovy subprojects to camel-groovy

This branch includes the following new commits:

     new b118040f1 DPE-107 Talend ESB customized branch of Camel-Karaf 4.8.1.
     new 4deafbd1f DPE-107 Updates and adaptations for TESB.. (#75)
     new 1e306df9b fix(DPE-562) : update aws kinesis
     new bd55c1e2c DPE-570 Update of vulnerable dependencies.
     new 9226c6b69 DPE-585 Jackson alignment at version 2.18.2.
     new cc37ab8e7 fix(DPE-586) : add missing import to cxf all (#80)
     new 4eaf6d402 fix(DPE-562): Add an integration test for AWS Kinesis (#82)
     new 13840a9de fix(DPE-562): Properly set the version of camel-aws2-kinesis (#83)
     new 6f2d6a557 DPE-570 Spring update to 6.1.14.
     new ce9e73165 DPE-585 Jackson alignment at 2.18.2 in camel-jacksonxml.
     new 27528627d DPE-570 camel-robotframework disabled as unsecure.
     new dc4130a54 fix(DPE-642): Add Groovy subprojects to camel-groovy

The 12 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



(camel-karaf) 03/12: fix(DPE-562) : update aws kinesis

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit 1e306df9b0b93d59ed5cad8be42fedac923fd218
Author: Francois de Parscau <fr...@qlik.com>
AuthorDate: Mon Jan 6 14:59:12 2025 +0100

    fix(DPE-562) : update aws kinesis
---
 features/src/main/feature/camel-features.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index f45c77880..11a12cc55 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -566,6 +566,7 @@
         <bundle dependency='true'>wrap:mvn:software.amazon.kinesis/amazon-kinesis-client/${amazon-kinesis-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/dynamodb/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/cloudwatch/${aws-java-sdk2-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-json-protocol/${aws-java-sdk2-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-aws2-kinesis/${upstream.version}</bundle>
     </feature>
     <feature name='camel-aws2-kms' version='${upstream.version}' start-level='50'>


(camel-karaf) 10/12: DPE-585 Jackson alignment at 2.18.2 in camel-jacksonxml.

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit ce9e73165538fe7a749d52ab40db764276522430
Author: Andreas Mattes <an...@fastmail.de>
AuthorDate: Wed Jan 15 17:50:23 2025 +0100

    DPE-585 Jackson alignment at 2.18.2 in camel-jacksonxml.
---
 features/src/main/feature/camel-features.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index e86cc358d..a3ff7241a 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -1686,8 +1686,8 @@
     </feature>
     <feature name='camel-jacksonxml' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-jakarta-xmlbind-annotations/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${auto-detect-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-jakarta-xmlbind-annotations/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-jacksonxml/${upstream.version}</bundle>
     </feature>
     <feature name='camel-jasypt' version='${upstream.version}' start-level='50'>


(camel-karaf) 09/12: DPE-570 Spring update to 6.1.14.

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit 6f2d6a5573a3ad8ad24f342dba2b7050eb5181df
Author: Andreas Mattes <an...@fastmail.de>
AuthorDate: Wed Jan 15 17:06:33 2025 +0100

    DPE-570 Spring update to 6.1.14.
---
 features/src/main/feature/camel-features.xml | 2 +-
 pom.xml                                      | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index e37b16165..e86cc358d 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -2912,7 +2912,7 @@
     <feature name='camel-test-spring' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-spring</feature>
         <feature version='${camel-osgi-version-range}'>camel-test</feature>
-        <bundle dependency='true'>wrap:mvn:org.springframework/spring-test/${spring-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.springframework/spring-test/${spring.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-test-spring/${upstream.version}</bundle>
     </feature>
     <feature name='camel-threadpoolfactory-vertx' version='${upstream.version}' start-level='50'>
diff --git a/pom.xml b/pom.xml
index 393878399..fd2f2a770 100644
--- a/pom.xml
+++ b/pom.xml
@@ -121,6 +121,7 @@
         <paranamer.tesb.version>2.8</paranamer.tesb.version>
         <protobuf.tesb.version>3.25.5</protobuf.tesb.version>
         <pulsar.tesb.version>3.3.3</pulsar.tesb.version>
+        <spring.tesb.version>6.1.14</spring.tesb.version>
         <velocity.tesb.version>2.4.1</velocity.tesb.version>
         <wildfly-elytron.tesb.version>2.2.7.Final</wildfly-elytron.tesb.version>
         <zookeeper.tesb.version>3.9.3</zookeeper.tesb.version>
@@ -765,6 +766,7 @@
                             <paranamer.tesb.version>${paranamer.tesb.version}</paranamer.tesb.version>
                             <protobuf.tesb.version>${protobuf.tesb.version}</protobuf.tesb.version>
                             <pulsar.tesb.version>${pulsar.tesb.version}</pulsar.tesb.version>
+                            <spring.tesb.version>${spring.tesb.version}</spring.tesb.version>
                             <velocity.tesb.version>${velocity.tesb.version}</velocity.tesb.version>
                             <wildfly-elytron.tesb.version>${wildfly-elytron.tesb.version}</wildfly-elytron.tesb.version>
                             <zookeeper.tesb.version>${zookeeper.tesb.version}</zookeeper.tesb.version>


(camel-karaf) 08/12: fix(DPE-562): Properly set the version of camel-aws2-kinesis (#83)

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit 13840a9dedbb3bf56df632a7c0b5382ba87c1004
Author: Nicolas Filotto <es...@users.noreply.github.com>
AuthorDate: Tue Jan 14 11:51:18 2025 +0100

    fix(DPE-562): Properly set the version of camel-aws2-kinesis (#83)
---
 features/src/main/feature/camel-features.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index 06b883857..e37b16165 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -569,7 +569,7 @@
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-json-protocol/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-cbor-protocol/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/third-party-jackson-dataformat-cbor/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kinesis/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kinesis/${upstream.version}</bundle>
     </feature>
     <feature name='camel-aws2-kms' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>


(camel-karaf) 01/12: DPE-107 Talend ESB customized branch of Camel-Karaf 4.8.1.

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit b118040f180b6ceb74a43f85ccc2396a03746f91
Author: Andreas Mattes <an...@fastmail.de>
AuthorDate: Fri Nov 8 19:28:53 2024 +0100

    DPE-107 Talend ESB customized branch of Camel-Karaf 4.8.1.
---
 {.github => .github.inactive}/autolabeler.yml      |    0
 {.github => .github.inactive}/workflows/main.yml   |    0
 .github/CODEOWNERS                                 |    1 +
 .gitignore                                         |    1 +
 .tool-versions                                     |    2 +
 Jenkinsfile.talend                                 |    5 +
 components/camel-blueprint/pom.xml                 |    8 +-
 components/camel-cxf/camel-cxf-all/pom.xml         |   40 +-
 .../camel/component/cxf/osgi/MainActivator.java    |    2 +
 .../main/resources/META-INF/cxf/bus-extensions.txt |    2 +
 components/camel-cxf/camel-cxf-blueprint/pom.xml   |    8 +-
 .../camel-cxf-transport-blueprint/pom.xml          |    8 +-
 components/camel-spring/pom.xml                    |    6 +-
 core/camel-support/pom.xml                         |    6 +-
 features/pom.xml                                   |    8 +-
 features/src/main/feature/camel-features.xml       | 1689 ++++++++++----------
 pom.xml                                            |   80 +-
 tests/camel-integration-test/pom.xml               |   14 +-
 tests/camel-test-scr/pom.xml                       |    6 +-
 tests/examples/pom.xml                             |   12 +-
 tests/features/camel-cometd/pom.xml                |    4 +-
 tests/features/camel-cxf/pom.xml                   |    4 +-
 tests/features/pom.xml                             |   14 +-
 23 files changed, 1028 insertions(+), 892 deletions(-)

diff --git a/.github/autolabeler.yml b/.github.inactive/autolabeler.yml
similarity index 100%
rename from .github/autolabeler.yml
rename to .github.inactive/autolabeler.yml
diff --git a/.github/workflows/main.yml b/.github.inactive/workflows/main.yml
similarity index 100%
rename from .github/workflows/main.yml
rename to .github.inactive/workflows/main.yml
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
new file mode 100644
index 000000000..0b0b80be9
--- /dev/null
+++ b/.github/CODEOWNERS
@@ -0,0 +1 @@
+* @Talend/esb-runtime-codeowners
diff --git a/.gitignore b/.gitignore
index 5d69a553e..1040cc71b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,3 +25,4 @@ components/camel-cxf/activemq-data
 *.swp
 .flattened-pom.xml
 .java-version
+.resolved-pom.xml
diff --git a/.tool-versions b/.tool-versions
new file mode 100644
index 000000000..05d7051eb
--- /dev/null
+++ b/.tool-versions
@@ -0,0 +1,2 @@
+java openjdk-17
+maven 3.9.9
diff --git a/Jenkinsfile.talend b/Jenkinsfile.talend
new file mode 100644
index 000000000..5a5a84f01
--- /dev/null
+++ b/Jenkinsfile.talend
@@ -0,0 +1,5 @@
+@Library('esb') _
+ 
+Fork(
+        MVN_MODULES: 'org.apache.camel.karaf:camel-support,org.apache.camel.karaf:camel-cxf-all,org.apache.camel.karaf:camel-spring,org.apache.camel.karaf:apache-camel'
+)
diff --git a/components/camel-blueprint/pom.xml b/components/camel-blueprint/pom.xml
index 44795c1df..f0bba730b 100644
--- a/components/camel-blueprint/pom.xml
+++ b/components/camel-blueprint/pom.xml
@@ -35,8 +35,8 @@
         <firstVersion>2.4.0</firstVersion>
         <label>java,osgi</label>
         <camel.osgi.export>
-            org.apache.camel.blueprint*;version=${project.version},
-            org.apache.camel.util.blueprint*;version=${project.version}
+            org.apache.camel.blueprint*;version=${upstream.version},
+            org.apache.camel.util.blueprint*;version=${upstream.version}
         </camel.osgi.export>
         <camel.osgi.import>
             jakarta.xml.bind*;version="[3,5)",
@@ -60,7 +60,7 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-osgi</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.camel</groupId>
@@ -129,7 +129,7 @@
                             <artifactItem>
                                 <groupId>org.apache.camel.karaf</groupId>
                                 <artifactId>camel-blueprint</artifactId>
-                                <version>${project.version}</version>
+                                <version>${upstream.version}</version>
                                 <type>jar</type>
                                 <overWrite>false</overWrite>
                                 <outputDirectory>${project.build.directory}/schema</outputDirectory>
diff --git a/components/camel-cxf/camel-cxf-all/pom.xml b/components/camel-cxf/camel-cxf-all/pom.xml
index 8b4f81ce5..9081f1bcb 100644
--- a/components/camel-cxf/camel-cxf-all/pom.xml
+++ b/components/camel-cxf/camel-cxf-all/pom.xml
@@ -31,37 +31,39 @@
     <artifactId>camel-cxf-all</artifactId>
     <packaging>bundle</packaging>
     <name>Apache Camel :: Karaf :: Components :: CXF :: All in one</name>
+    <version>${revision}</version>
 
     <properties>
+        <revision>${camel-cxf-all.tesb.version}</revision>
         <camel.osgi.export>
-            org.apache.camel.component.cxf.osgi;version=${project.version},
+            org.apache.camel.component.cxf.osgi;version=${upstream.version},
             org.apache.camel.component.cxf.common;version=${camel-version},
             org.apache.camel.component.cxf.common.header;version=${camel-version},
             org.apache.camel.component.cxf.common.message;version=${camel-version},
             org.apache.camel.component.cxf.converter;version=${camel-version},
             org.apache.camel.component.cxf.util;version=${camel-version},
-            org.apache.camel.component.cxf.bus.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.bus.osgi;version=${project.version},
-            org.apache.camel.component.cxf.configuration.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.helpers;version=${project.version},
+            org.apache.camel.component.cxf.bus.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.bus.osgi;version=${upstream.version},
+            org.apache.camel.component.cxf.configuration.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.helpers;version=${upstream.version},
             org.apache.camel.component.cxf.jaxrs;version="${camel-version}",
-            org.apache.camel.component.cxf.ext.logging.osgi;version=${project.version},
-            org.apache.camel.component.cxf.jaxrs.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.jaxws.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.frontend.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.jaxrs.client.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.transport.http.osgi;version=${project.version},
-            org.apache.camel.component.cxf.transport.http.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.servlet.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.ws.addressing.blueprint;version=${project.version},
-            org.apache.camel.component.cxf.ws.policy.blueprint;version=${project.version},
+            org.apache.camel.component.cxf.ext.logging.osgi;version=${upstream.version},
+            org.apache.camel.component.cxf.jaxrs.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.jaxws.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.frontend.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.jaxrs.client.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.transport.http.osgi;version=${upstream.version},
+            org.apache.camel.component.cxf.transport.http.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.servlet.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.ws.addressing.blueprint;version=${upstream.version},
+            org.apache.camel.component.cxf.ws.policy.blueprint;version=${upstream.version},
             org.apache.camel.component.cxf.feature;version=${camel-version},
             org.apache.camel.component.cxf.interceptors;version=${camel-version},
             org.apache.camel.component.cxf.jaxws;version=${camel-version},
             org.apache.camel.component.cxf.transport;version=${camel-version},
             org.apache.camel.component.cxf.transport.header;version=${camel-version},
             org.apache.camel.component.cxf.transport.message;version=${camel-version},
-            org.apache.camel.component.cxf.binding.soap.blueprint;version=${project.version},
+            org.apache.camel.component.cxf.binding.soap.blueprint;version=${upstream.version},
             org.apache.cxf*;version=${cxf-version},
         </camel.osgi.export>
         <camel.osgi.activator>org.apache.camel.component.cxf.osgi.MainActivator</camel.osgi.activator>
@@ -170,7 +172,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-rest</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf-rest.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -324,7 +326,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-soap</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf-soap.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -407,4 +409,4 @@
         </plugins>
     </build>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
index 3d51575a0..170cd8ece 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
+++ b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
@@ -21,6 +21,7 @@ import java.util.List;
 
 import org.apache.camel.component.cxf.bus.osgi.CXFActivator;
 import org.apache.camel.component.cxf.transport.http.osgi.HTTPTransportActivator;
+// import org.apache.camel.component.cxf.transport.http_jetty.osgi.HTTPJettyTransportActivator;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -35,6 +36,7 @@ public class MainActivator implements BundleActivator {
             new org.apache.camel.component.cxf.frontend.blueprint.Activator(),
             new org.apache.camel.component.cxf.jaxrs.client.blueprint.Activator(),
             new HTTPTransportActivator(),
+//             new HTTPJettyTransportActivator(),
             new org.apache.camel.component.cxf.ws.addressing.blueprint.Activator(),
             new org.apache.camel.component.cxf.ws.policy.blueprint.Activator());
 
diff --git a/components/camel-cxf/camel-cxf-all/src/main/resources/META-INF/cxf/bus-extensions.txt b/components/camel-cxf/camel-cxf-all/src/main/resources/META-INF/cxf/bus-extensions.txt
index 7ad7d9c74..364a04512 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/resources/META-INF/cxf/bus-extensions.txt
+++ b/components/camel-cxf/camel-cxf-all/src/main/resources/META-INF/cxf/bus-extensions.txt
@@ -29,6 +29,8 @@ org.apache.cxf.transport.http.HTTPWSDLExtensionLoader::true:true
 org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder::true:true
 org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder::true:true
 org.apache.cxf.transport.http.policy.NoOpPolicyInterceptorProvider::true:true
+# org.apache.camel.component.cxf.transport.http_jetty.osgi.HTTPJettyDestinationFactory::true
+# org.apache.cxf.transport.http_jetty.JettyHTTPServerEngineFactory::true
 org.apache.cxf.ws.addressing.policy.AddressingAssertionBuilder::true:true
 org.apache.cxf.ws.addressing.policy.UsingAddressingAssertionBuilder::true:true
 org.apache.cxf.ws.addressing.policy.AddressingPolicyInterceptorProvider::true:true
diff --git a/components/camel-cxf/camel-cxf-blueprint/pom.xml b/components/camel-cxf/camel-cxf-blueprint/pom.xml
index a444b6b1c..ce0a59424 100644
--- a/components/camel-cxf/camel-cxf-blueprint/pom.xml
+++ b/components/camel-cxf/camel-cxf-blueprint/pom.xml
@@ -33,8 +33,8 @@
     <properties>
         <firstVersion>3.2.0</firstVersion>
         <camel.osgi.export>
-            org.apache.camel.component.cxf.blueprint.helpers;version=${project.version},
-            org.apache.camel.component.cxf.blueprint.jaxrs;version=${project.version},
+            org.apache.camel.component.cxf.blueprint.helpers;version=${upstream.version},
+            org.apache.camel.component.cxf.blueprint.jaxrs;version=${upstream.version},
         </camel.osgi.export>
         <camel-osgi-camel-import>
             org.apache.camel.component.cxf.helpers;${camel-osgi-import-camel-version},
@@ -70,14 +70,14 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-blueprint</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
             <optional>true</optional>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-cxf-all</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
             <optional>true</optional>
         </dependency>
diff --git a/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml b/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml
index d3279f33e..34252baf7 100644
--- a/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml
+++ b/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml
@@ -34,7 +34,7 @@
     <properties>
         <firstVersion>3.2.0</firstVersion>
         <camel.osgi.export>
-            org.apache.camel.component.cxf.transport.blueprint;version=${project.version},
+            org.apache.camel.component.cxf.transport.blueprint;version=${upstream.version},
         </camel.osgi.export>
         <camel-osgi-camel-import>
             org.apache.camel.component.cxf.helpers;${camel-osgi-import-camel-version},
@@ -57,20 +57,20 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-blueprint</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
             <optional>true</optional>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-cxf-blueprint</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-cxf-all</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
             <optional>true</optional>
         </dependency>
diff --git a/components/camel-spring/pom.xml b/components/camel-spring/pom.xml
index 623d25e64..9fbf16f63 100644
--- a/components/camel-spring/pom.xml
+++ b/components/camel-spring/pom.xml
@@ -31,8 +31,10 @@
     <artifactId>camel-spring</artifactId>
     <packaging>bundle</packaging>
     <name>Apache Camel :: Karaf :: Components :: Spring</name>
+    <version>${revision}</version>
 
     <properties>
+        <revision>${camel-spring.tesb.version}</revision>
         <camel.osgi.export>
             org.apache.camel*;version=${camel-version}
         </camel.osgi.export>
@@ -49,7 +51,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-spring</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-spring.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -83,4 +85,4 @@
         </plugins>
     </build>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/core/camel-support/pom.xml b/core/camel-support/pom.xml
index ba70cf4d8..25d1be947 100644
--- a/core/camel-support/pom.xml
+++ b/core/camel-support/pom.xml
@@ -31,8 +31,10 @@
     <artifactId>camel-support</artifactId>
     <packaging>bundle</packaging>
     <name>Apache Camel :: Karaf :: Core :: Support</name>
+    <version>${revision}</version>
 
     <properties>
+        <revision>${camel-support.tesb.version}</revision>
         <camel.osgi.export>
             org.apache.camel*;version=${camel-version}
         </camel.osgi.export>
@@ -45,7 +47,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-support</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-support.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -79,4 +81,4 @@
         </plugins>
     </build>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/features/pom.xml b/features/pom.xml
index cf312fd49..319e97e1e 100644
--- a/features/pom.xml
+++ b/features/pom.xml
@@ -31,8 +31,10 @@
     <artifactId>apache-camel</artifactId>
     <packaging>pom</packaging>
     <name>Apache Camel :: Karaf :: Features</name>
+    <version>${revision}</version>
 
     <properties>
+        <revision>${camel-features.tesb.version}</revision>
         <spi-consumer>SPI-Consumer=*</spi-consumer>
     </properties>
 
@@ -70,7 +72,7 @@
             <plugin>
                 <groupId>org.apache.camel.karaf</groupId>
                 <artifactId>camel-karaf-feature-maven-plugin</artifactId>
-                <version>${project.version}</version>
+                <version>${upstream.version}</version>
                 <executions>
                     <execution>
                         <goals>
@@ -100,7 +102,7 @@
                         <feature>framework</feature>
                     </framework>
                     <features>
-                        <feature>camel*</feature>
+                        <feature>camel|camel-(?!(robotframework|other))*</feature>
                     </features>
                 </configuration>
                 <executions>
@@ -139,4 +141,4 @@
         </plugins>
     </build>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index 059d85b72..74f43409f 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -17,7 +17,7 @@
     limitations under the License.
 
 -->
-<features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0" name="camel-${project.version}">
+<features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0" name="camel-${upstream.version}">
 
     <!-- TODO: specs will be provided by Apache Karaf 4.5.x spec features repository. However, in order to have Camel 4.x working on Karaf 4.4.x, we define spec features here -->
     <feature name="jakarta-activation" version="${jakarta-activation-version}">
@@ -55,17 +55,54 @@
 
     <feature name="jaxb-runtime" version="${jaxb3-core-version}">
         <feature version="[3,4)">jakarta-xml-bind</feature>
-        <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-core/${jaxb3-core-version}</bundle>
-        <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-impl/${jaxb3-impl-version}</bundle>
-        <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-osgi/${jaxb3-osgi-version}</bundle>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/jaxb-core/${jaxb3-core-version}</bundle>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/jaxb-runtime/${jaxb3-impl-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.glassfish.jaxb/txw2/${jaxb3-core-version}$Bundle-SymbolicName=org.glassfish.jaxb.txw2&amp;Bundle-Version=${jaxb3-core-version}&amp;Export-Package=com.sun.xml.txw2*;version=${jaxb3-core-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.istack/istack-commons-runtime/${jaxb3-istack.tesb.version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.fastinfoset/FastInfoset/${jaxb3-fastinfoset.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.jvnet.staxex/stax-ex/${jaxb3-staxex.tesb.version}</bundle>
+        <!-- <bundle>mvn:org.glassfish.hk2/osgi-resource-locator/${osgi-resource-locator-version}</bundle> -->
+        <!-- <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-core/${jaxb3-core-version}</bundle> -->
+        <!-- <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-impl/${jaxb3-impl-version}</bundle> -->
+        <!-- <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-osgi/${jaxb3-osgi-version}</bundle> -->
+    </feature>
+
+    <feature name="jaxb-tools" version="${jaxb3-core-version}">
+        <feature version="[3,4)">jaxb-runtime</feature>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/codemodel/${jaxb3-impl-version}</bundle>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/xsom/${jaxb3-impl-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.glassfish.jaxb/jaxb-jxc/${jaxb3-impl-version}$Bundle-SymbolicName=org.glassfish.jaxb.jxc&amp;Bundle-Version=${jaxb3-impl-version}&amp;Export-Package=com.sun.tools.jxc*;version=${jaxb3-impl-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.glassfish.jaxb/jaxb-xjc/${jaxb3-impl-version}$Bundle-SymbolicName=org.glassfish.jaxb.xjc&amp;Bundle-Version=${jaxb3-impl-version}&amp;Export-Package=com.sun.tools.xjc*;version=${jaxb3-impl-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.istack/istack-commons-tools/${jaxb3-istack.tesb.version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.bind.external/relaxng-datatype/${jaxb3-impl-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.bind.external/rngom/${jaxb3-impl-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.dtd-parser/dtd-parser/${jaxb3-dtd-parser.tesb.version}</bundle>
     </feature>
 
     <feature name="jaxb-runtime" version="${jaxb-core-version}">
         <feature version="[4,5)">jakarta-xml-bind</feature>
-        <bundle dependency="true">mvn:com.sun.istack/istack-commons-runtime/${auto-detect-version}</bundle>
-        <bundle dependency="true">mvn:org.glassfish.jaxb/jaxb-core/${glassfish-jaxb-runtime-version}</bundle>
-        <bundle dependency='true'>mvn:org.glassfish.jaxb/jaxb-runtime/${glassfish-jaxb-runtime-version}</bundle>
-        <bundle>mvn:org.glassfish.hk2/osgi-resource-locator/${osgi-resource-locator-version}</bundle>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/jaxb-core/${jaxb-core-version}</bundle>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/jaxb-runtime/${jaxb-impl-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.glassfish.jaxb/txw2/${jaxb-core-version}$Bundle-SymbolicName=org.glassfish.jaxb.txw2&amp;Bundle-Version=${jaxb-core-version}&amp;Export-Package=com.sun.xml.txw2*;version=${jaxb-core-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.istack/istack-commons-runtime/${jaxb-istack.tesb.version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.fastinfoset/FastInfoset/${jaxb-fastinfoset.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.jvnet.staxex/stax-ex/${jaxb-staxex.tesb.version}</bundle>
+        <!-- <bundle>mvn:org.glassfish.hk2/osgi-resource-locator/${osgi-resource-locator-version}</bundle> -->
+        <!-- <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-core/${jaxb-core-version}</bundle> -->
+        <!-- <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-impl/${jaxb-impl-version}</bundle> -->
+        <!-- <bundle dependency="true">mvn:com.sun.xml.bind/jaxb-osgi/${jaxb-osgi-version}</bundle> -->
+    </feature>
+
+    <feature name="jaxb-tools" version="${jaxb-core-version}">
+        <feature version="[4,5)">jaxb-runtime</feature>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/codemodel/${jaxb-impl-version}</bundle>
+        <bundle dependency="true">mvn:org.glassfish.jaxb/xsom/${jaxb-impl-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.glassfish.jaxb/jaxb-jxc/${jaxb-impl-version}$Bundle-SymbolicName=org.glassfish.jaxb.jxc&amp;Bundle-Version=${jaxb-impl-version}&amp;Export-Package=com.sun.tools.jxc*;version=${jaxb-impl-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.glassfish.jaxb/jaxb-xjc/${jaxb-impl-version}$Bundle-SymbolicName=org.glassfish.jaxb.xjc&amp;Bundle-Version=${jaxb-impl-version}&amp;Export-Package=com.sun.tools.xjc*;version=${jaxb-impl-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.istack/istack-commons-tools/${jaxb3-istack.tesb.version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.bind.external/relaxng-datatype/${jaxb-impl-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.bind.external/rngom/${jaxb-impl-version}</bundle>
+        <bundle dependency="true">mvn:com.sun.xml.dtd-parser/dtd-parser/${jaxb-dtd-parser.tesb.version}</bundle>
     </feature>
 
     <feature name="activation-runtime" version="${angus-activation-version}">
@@ -105,32 +142,32 @@
         <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson216-version}</bundle>
     </feature>
 
-    <feature name="jetty" version="${jetty11-version}">
+    <feature name="jetty" version="${jetty11.tesb.version}">
         <feature version="[5,6)">jakarta-servlet</feature>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-alpn-server/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-http/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-io/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-server/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-util/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-security/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty.http2/http2-hpack/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty.http2/http2-common/${jetty11-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty.http2/http2-server/${jetty11-version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-alpn-server/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-http/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-io/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-server/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-util/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-security/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.http2/http2-hpack/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.http2/http2-common/${jetty11.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.http2/http2-server/${jetty11.tesb.version}</bundle>
     </feature>
 
-    <feature name="jetty" version="${jetty-version}">
+    <feature name="jetty" version="${jetty12.tesb.version}">
         <feature version="[6,7)">jakarta-servlet</feature>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-alpn-server/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-http/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-io/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-server/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-session/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-jmx/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-util/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-security/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty.http2/jetty-http2-hpack/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty.http2/jetty-http2-common/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty.http2/jetty-http2-server/${jetty-version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-alpn-server/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-http/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-io/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-server/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-session/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-jmx/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-util/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty/jetty-security/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.http2/jetty-http2-hpack/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.http2/jetty-http2-common/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.http2/jetty-http2-server/${jetty12.tesb.version}</bundle>
     </feature>
 
     <feature name="http-client" version="${httpclient4-version}">
@@ -139,8 +176,8 @@
     </feature>
 
     <feature name="http-client" version="${httpclient-version}">
-        <bundle dependency="true">wrap:mvn:org.apache.httpcomponents.core5/httpcore5/${httpclient-version}</bundle>
-        <bundle dependency="true">wrap:mvn:org.apache.httpcomponents.client5/httpclient5/${httpclient-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.apache.httpcomponents.core5/httpcore5/${httpclient-version}$Bundle-SymbolicName=org.apache.httpcore5&amp;Bundle-Version=${httpclient-version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.apache.httpcomponents.client5/httpclient5/${httpclient-version}$Bundle-SymbolicName=org.apache.httpclient5&amp;Bundle-Version=${httpclient-version}</bundle>
     </feature>
 
     <feature name="netty" version="${netty-version}">
@@ -237,68 +274,74 @@
         <bundle dependency='true'>mvn:com.google.guava/failureaccess/${auto-detect-version}</bundle>
     </feature>
 
+    <!-- Wrapped zookeeper jars. -->
+    <feature name='zookeeper-core' version='${zookeeper-version}' start-level='50'>
+        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Bundle-SymbolicName=org.apache.zookeeper&amp;Bundle-Version=${zookeeper-version}&amp;Export-Package=org.apache.zookeeper;version=${zookeeper-version},org.apache.zookeeper.*;version=${zookeeper-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper-jute/${zookeeper-version}$Bundle-SymbolicName=org.apache.zookeeper-jute&amp;Bundle-Version=${zookeeper-version}&amp;Fragment-Host=org.apache.zookeeper&amp;Export-Package=org.apache.jute;version=${zookeeper-version},org.apache.zookeeper.*;version=${zookeeper-version}</bundle>
+    </feature>
+
     <!-- Apache Camel core features -->
 
-    <feature name="camel" version="${project.version}" start-level="50">
+    <feature name="camel" version="${upstream.version}" start-level="50">
         <feature prerequisite="true">wrap</feature>
         <feature version="${camel-osgi-version-range}">camel-core</feature>
         <feature version="${camel-osgi-version-range}">camel-blueprint</feature>
     </feature>
 
-    <feature name="camel-core" version="${project.version}" start-level="50">
+    <feature name="camel-core" version="${upstream.version}" start-level="50">
         <feature version="[${servicemix-specs-version},11)">xml-specs-api</feature>
         <bundle dependency="true">mvn:commons-codec/commons-codec/${commons-codec-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-api/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-management-api/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-util/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-util-json/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-support/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-base-engine/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-management/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-model/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-reifier/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-processor/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-engine/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-languages/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-osgi/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-catalog/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-console/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cloud/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cluster/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-health/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xml-io/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xml-io-util/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xml-jaxp/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xml-jaxb/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-tooling-model/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-main/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-api/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-management-api/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-util/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-util-json/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-support/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-base-engine/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-management/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-model/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-reifier/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-processor/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-engine/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-languages/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-osgi/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-catalog/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-console/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cloud/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cluster/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-health/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xml-io/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xml-io-util/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xml-jaxp/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xml-jaxb/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-tooling-model/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-main/${upstream.version}</bundle>
         <!-- core components -->
-        <bundle>mvn:org.apache.camel.karaf/camel-bean/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-browse/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-controlbus/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-dataformat/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-dataset/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-direct/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-file/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-language/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-log/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mock/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ref/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-rest/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-saga/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-scheduler/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-seda/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-stub/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-timer/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-validator/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xpath/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xslt/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-directvm/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-vm/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-bean/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-browse/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-controlbus/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-dataformat/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-dataset/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-direct/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-file/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-language/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-log/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mock/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ref/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-rest/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-saga/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-scheduler/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-seda/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-stub/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-timer/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-validator/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xpath/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xslt/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-directvm/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-vm/${upstream.version}</bundle>
         <conditional>
             <condition>shell</condition>
-            <bundle>mvn:org.apache.camel.karaf/camel-karaf-shell/${project.version}</bundle>
+            <bundle>mvn:org.apache.camel.karaf/camel-karaf-shell/${upstream.version}</bundle>
         </conditional>
         <!-- allow camel to access its own mbeans for karaf commands and other needs -->
         <config name="jmx.acl.org.apache.camel">
@@ -306,46 +349,46 @@
         </config>
     </feature>
 
-    <feature name="camel-blueprint" version="${project.version}" start-level="50">
+    <feature name="camel-blueprint" version="${upstream.version}" start-level="50">
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature>aries-blueprint</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-xml/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-blueprint/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-xml/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-blueprint/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring' version='${project.version}' start-level='50'>
+    <feature name='camel-spring' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-spring-version}'>spring</feature>
         <feature version='${camel-osgi-spring-version}'>spring-tx</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-core-xml/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-xml/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-core-xml/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring/${camel-spring.tesb.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-xml/${upstream.version}</bundle>
     </feature>
 
     <!-- the following features are sorted A..Z -->
 
-    <feature name='camel-activemq' version='${project.version}' start-level='50'>
+    <feature name='camel-activemq' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jms</feature>
         <bundle dependency='true'>mvn:org.apache.activemq/activemq-client-jakarta/${activemq-version}</bundle>
         <bundle dependency='true'>mvn:org.fusesource.hawtbuf/hawtbuf/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-activemq/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-activemq/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-activemq6' version='${project.version}' start-level='50'>
+    <feature name='camel-activemq6' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jms</feature>
         <bundle dependency='true'>mvn:org.apache.activemq/activemq-client/${activemq6-version}</bundle>
         <bundle dependency='true'>mvn:org.fusesource.hawtbuf/hawtbuf/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-activemq6/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-activemq6/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-amqp' version='${project.version}' start-level='50'>
+    <feature name='camel-amqp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jms</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>mvn:org.apache.qpid/qpid-jms-client/${qpid-jms-client-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.qpid/proton-j/${qpid-proton-j-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-http/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-transport-classes-epoll/${netty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-amqp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-amqp/${upstream.version}</bundle>
     </feature>
 
-    <feature name='camel-arangodb' version='${project.version}' start-level='50'>
+    <feature name='camel-arangodb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[2.16,2.17)'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
@@ -361,50 +404,50 @@
         <bundle dependency='true'>mvn:io.netty/netty-codec-http2/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-handler-proxy/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-socks/${netty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-arangodb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-arangodb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-as2' version='${project.version}' start-level='50'>
+    <feature name='camel-as2' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[5,6)">http-client</feature>
         <feature version="[${bouncycastle-version},2)">bouncycastle</feature>
-        <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpclient-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpclient-version}$Bundle-SymbolicName=org.apache.httpcore5.h2&amp;Bundle-Version=${httpclient-version}</bundle>
         <!-- Wrap protocol used to export a private package that is used by camel-as2  -->
         <bundle dependency='true'>wrap:mvn:org.bouncycastle/bcutil-jdk18on/${bouncycastle-version}$overwrite=merge&amp;Export-Package=org.bouncycastle.*;version=${bouncycastle-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.velocity/velocity-engine-core/${velocity-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-as2/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-as2/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-asn1' version='${project.version}' start-level='50'>
+    <feature name='camel-asn1' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.beanit/asn1bean/${asn1bean-version}</bundle>
         <bundle dependency='true'>mvn:org.bouncycastle/bcprov-jdk18on/${bouncycastle-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-asn1/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-asn1/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-asterisk' version='${project.version}' start-level='50'>
+    <feature name='camel-asterisk' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.asteriskjava/asterisk-java/${asterisk-java-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-asterisk/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-asterisk/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-atmosphere-websocket' version='${project.version}' start-level='50'>
+    <feature name='camel-atmosphere-websocket' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-servlet</feature>
         <!-- Wrap protocol used to work around the wrong version range used for the servlet API [2.5,4)  -->
         <bundle dependency="true">wrap:mvn:org.atmosphere/atmosphere-runtime/${atmosphere-version}$overwrite=merge&amp;Import-Package=jakarta.servlet;version:="[6,7)",*;resolution:=optional</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-atmosphere-websocket/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-atmosphere-websocket/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-atom' version='${project.version}' start-level='50'>
+    <feature name='camel-atom' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency="true">wrap:mvn:com.apptasticsoftware/rssreader/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-atom/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-atom/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-avro' version='${project.version}' start-level='50'>
+    <feature name='camel-avro' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.avro/avro/${avro-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-avro/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-avro/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-avro-rpc' version='${project.version}' start-level='50'>
+    <feature name='camel-avro-rpc' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
@@ -424,10 +467,10 @@
         <!-- Use the wrap protocol to import the same version of javax.servlet-api as the rest-->
         <bundle dependency='true'>wrap:mvn:org.apache.avro/avro-ipc-jetty/${avro-ipc-jetty-version}$overwrite=merge&amp;Import-Package=javax.servlet*;version:="[3.1,4)",*</bundle>
         <bundle dependency='true'>mvn:org.apache.avro/avro-ipc-netty/${avro-ipc-netty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-avro-rpc/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-avro-rpc-jetty/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-avro-rpc/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-avro-rpc-jetty/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws-bedrock' version='${project.version}' start-level='50'>
+    <feature name='camel-aws-bedrock' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/apache-client/${aws-java-sdk2-version}</bundle>
@@ -435,86 +478,86 @@
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/bedrockruntime/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/bedrockagent/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/bedrockagentruntime/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws-bedrock/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws-bedrock/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws-cloudtrail' version='${project.version}' start-level='50'>
+    <feature name='camel-aws-cloudtrail' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cloudevents</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/cloudtrail/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws-cloudtrail/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws-cloudtrail/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws-config' version='${project.version}' start-level='50'>
+    <feature name='camel-aws-config' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/config/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws-config/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws-config/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws-secrets-manager' version='${project.version}' start-level='50'>
+    <feature name='camel-aws-secrets-manager' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/cloudtrail/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/sqs/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/secretsmanager/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws-secrets-manager/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws-secrets-manager/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws-xray' version='${project.version}' start-level='50'>
+    <feature name='camel-aws-xray' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.amazonaws/aws-xray-recorder-sdk-core/${aws-xray-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws-xray/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws-xray/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-athena' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-athena' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/athena/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-athena/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-athena/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-cw' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-cw' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/cloudwatch/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-cw/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-cw/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-ddb' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-ddb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/dynamodb/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ddb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ddb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-ec2' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-ec2' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/ec2/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ec2/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ec2/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-ecs' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-ecs' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/ecs/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ecs/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ecs/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-eks' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-eks' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/eks/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-json-protocol/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-eks/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-eks/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-eventbridge' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-eventbridge' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/eventbridge/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-eventbridge/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-eventbridge/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-iam' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-iam' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/iam/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-iam/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-iam/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-kinesis' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-kinesis' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency="true">wrap:mvn:software.amazon.awssdk/netty-nio-client/${aws-java-sdk2-version}</bundle>
@@ -523,133 +566,133 @@
         <bundle dependency='true'>wrap:mvn:software.amazon.kinesis/amazon-kinesis-client/${amazon-kinesis-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/dynamodb/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/cloudwatch/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kinesis/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kinesis/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-kms' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-kms' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/kms/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kms/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kms/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-lambda' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-lambda' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/lambda/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-lambda/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-lambda/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-mq' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-mq' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/mq/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-json-protocol/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-mq/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-mq/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-msk' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-msk' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/kafka/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-msk/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-msk/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-redshift' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-redshift' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/redshiftdata/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-redshift/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-redshift/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-s3' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-s3' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cloudevents</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/s3/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-xml-protocol/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-s3/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-s3/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-ses' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-ses' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency="true">mvn:jakarta.mail/jakarta.mail-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/ses/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ses/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-ses/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-sns' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-sns' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/sns/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-sns/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-sns/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-sqs' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-sqs' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cloudevents</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/sqs/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-json-protocol/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-sqs/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-sqs/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-step-functions' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-step-functions' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/sfn/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-step-functions/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-step-functions/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-sts' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-sts' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/sts/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-sts/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-sts/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-timestream' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-timestream' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/timestreamquery/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/timestreamwrite/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-timestream/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-timestream/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-aws2-translate' version='${project.version}' start-level='50'>
+    <feature name='camel-aws2-translate' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/translate/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-translate/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-translate/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-cosmosdb' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-cosmosdb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[${azure-core-version},2)'>azure</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-cosmos/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-cosmosdb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-cosmosdb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-eventhubs' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-eventhubs' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[${azure-core-version},2)'>azure-eventhubs</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-storage-blob/${azure-storage-blob-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-eventhubs/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-eventhubs/${upstream.version}</bundle>
     </feature>  
-    <feature name='camel-azure-files' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-files' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-ftp</feature>
         <feature version='[${azure-core-version},2)'>azure-storage</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-storage-file-share/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-files/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-files/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-key-vault' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-key-vault' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[${azure-core-version},2)'>azure-eventhubs</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-security-keyvault-secrets/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-storage-blob/${azure-storage-blob-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-key-vault/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-key-vault/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-schema-registry' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-schema-registry' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[${azure-core-version},2)'>azure</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-schema-registry/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-schema-registry/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-servicebus' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-servicebus' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[${azure-core-version},2)'>azure</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-core-amqp/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-messaging-servicebus/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-servicebus/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-servicebus/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-storage-blob' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-storage-blob' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[${azure-core-version},2)'>azure-storage</feature>
         <feature version='[4.1,5)'>netty</feature>
@@ -667,26 +710,26 @@
         <bundle dependency='true'>mvn:io.netty/netty-codec-dns/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.projectreactor.netty/reactor-netty-core/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:io.projectreactor.netty/reactor-netty-http/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-storage-blob/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-storage-blob/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-storage-datalake' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-storage-datalake' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[${azure-core-version},2)'>azure-storage</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-storage-file-datalake/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-storage-datalake/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-storage-datalake/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-azure-storage-queue' version='${project.version}' start-level='50'>
+    <feature name='camel-azure-storage-queue' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[${azure-core-version},2)'>azure-storage</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-storage-queue/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-azure-storage-queue/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-azure-storage-queue/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-base64' version='${project.version}' start-level='50'>
+    <feature name='camel-base64' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-base64/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-base64/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-bean-validator' version='${project.version}' start-level='50'>
+    <feature name='camel-bean-validator' version='${upstream.version}' start-level='50'>
         <feature prerequisite="true">spifly</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[3,4)">jakarta-validation</feature>
@@ -696,25 +739,25 @@
         <bundle dependency='true'>mvn:com.fasterxml/classmate/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.glassfish.expressly/expressly/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.el/jakarta.el-api/${jakarta-el5-api-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-bean-validator/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-bean-validator/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-barcode' version='${project.version}' start-level='50'>
+    <feature name='camel-barcode' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.google.zxing/core/${zxing-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.zxing/javase/${zxing-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-barcode/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-barcode/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-beanio' version='${project.version}' start-level='50'>
+    <feature name='camel-beanio' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.github.beanio/beanio/${beanio-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-beanio/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-beanio/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-bindy' version='${project.version}' start-level='50'>
+    <feature name='camel-bindy' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.ibm.icu/icu4j/${icu4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-bindy/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-bindy/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-bonita' version='${project.version}' start-level='50'>
+    <feature name='camel-bonita' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[5,6)">jakarta-servlet</feature>
@@ -726,33 +769,33 @@
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-security/${cxf-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-frontend-jaxrs/${cxf-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-transports-http/${cxf-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-bonita/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-bonita/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-box' version='${project.version}' start-level='50'>
+    <feature name='camel-box' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <feature version="[12,13)">jetty</feature>
+        <feature version="${jetty12.tesb.version-range}">jetty</feature>
         <feature version='[${bouncycastle-version},2)'>bouncycastle</feature>
         <feature version='[5,6)'>http-client</feature>
         <bundle dependency='true'>mvn:org.jsoup/jsoup/${jsoup-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.box/box-java-sdk/${box-java-sdk-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-box/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-box/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-braintree' version='${project.version}' start-level='50'>
+    <feature name='camel-braintree' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.jr/jackson-jr-objects/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-csv/${commons-csv-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:com.braintreepayments.gateway/braintree-java/${braintree-gateway-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-braintree/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-braintree/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-caffeine' version='${project.version}' start-level='50'>
+    <feature name='camel-caffeine' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency="true">mvn:com.github.ben-manes.caffeine/caffeine/${caffeine-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-caffeine/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-caffeine/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-cassandraql' version='${project.version}' start-level='50'>
+    <feature name='camel-cassandraql' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
@@ -763,37 +806,37 @@
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-core/${metrics-version}</bundle>
         <bundle dependency='true'>mvn:com.typesafe/config/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.hdrhistogram/HdrHistogram/${hdrhistrogram-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cassandraql/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cassandraql/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-cbor' version='${project.version}' start-level='50'>
+    <feature name='camel-cbor' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-cbor/${jackson2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cbor/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cbor/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-chatscript' version='${project.version}' start-level='50'>
+    <feature name='camel-chatscript' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-chatscript/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-chatscript/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-chunk' version='${project.version}' start-level='50'>
+    <feature name='camel-chunk' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.x5dev/chunk-templates/${chunk-templates-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-chunk/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-chunk/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-cloudevents' version='${project.version}' start-level='50'>
+    <feature name='camel-cloudevents' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-cloudevents/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cloudevents/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-cm-sms' version='${project.version}' start-level='50'>
+    <feature name='camel-cm-sms' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[3,4)">jakarta-validation</feature>
         <feature version='[5,6)'>http-client</feature>
         <bundle dependency='true'>mvn:com.googlecode.libphonenumber/libphonenumber/${libphonenumber-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cm-sms/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cm-sms/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-coap' version='${project.version}' start-level='50'>
+    <feature name='camel-coap' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-netty</feature>
         <feature version='[${bouncycastle-version},2)'>bouncycastle</feature>
@@ -801,14 +844,14 @@
         <bundle dependency='true'>wrap:mvn:org.eclipse.californium/element-connector/${californium-version}$overwrite=merge&amp;Import-Package=net.i2p.crypto.eddsa;resolution:=optional,*;resolution:=optional</bundle>
         <bundle dependency='true'>mvn:org.eclipse.californium/element-connector-tcp-netty/${californium-version}</bundle>
         <bundle dependency='true'>mvn:org.eclipse.californium/scandium/${californium-scandium-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-coap/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-coap/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-cometd' version='${project.version}' start-level='50'>
+    <feature name='camel-cometd' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
-        <feature version="${jetty-version}">jetty</feature>
-        <bundle dependency='true'>mvn:org.eclipse.jetty.ee10/jetty-ee10-servlet/${jetty-version}</bundle>
-        <bundle dependency='true'>mvn:org.eclipse.jetty.ee10/jetty-ee10-servlets/${jetty-version}</bundle>
+        <feature version="${jetty12.tesb.version-range}">jetty</feature>
+        <bundle dependency='true'>mvn:org.eclipse.jetty.ee10/jetty-ee10-servlet/${jetty12.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:org.eclipse.jetty.ee10/jetty-ee10-servlets/${jetty12.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-server-common/${cometd-java-server-version}</bundle>
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-server-http-jakarta/${cometd-java-server-version}</bundle>
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-server-websocket-jetty/${cometd-java-server-version}</bundle>
@@ -817,9 +860,9 @@
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-api-common/${cometd-java-server-version}</bundle>
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-api-client/${cometd-java-server-version}</bundle>
         <bundle dependency="true">mvn:org.eclipse.jetty/jetty-util-ajax/${jetty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cometd/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cometd/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-consul' version='${project.version}' start-level='50'>
+    <feature name='camel-consul' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[33,34)'>guava</feature>
@@ -833,17 +876,17 @@
         <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-guava/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-consul/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-consul/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-couchbase' version='${project.version}' start-level='50'>
+    <feature name='camel-couchbase' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.couchbase.client/core-io/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.couchbase.client/java-client/${couchbase-client-version}</bundle>
         <bundle dependency='true'>mvn:io.projectreactor/reactor-core/${reactor-version}</bundle>
         <bundle dependency='true'>mvn:org.reactivestreams/reactive-streams/${reactive-streams-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-couchbase/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-couchbase/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-couchdb' version='${project.version}' start-level='50'>
+    <feature name='camel-couchdb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency='true'>wrap:mvn:com.ibm.cloud/cloudant/${cloudant-version}</bundle>
@@ -858,36 +901,36 @@
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/okhttp/${squareup-okhttp-version}$Bundle-SymbolicName=com.squareup.okhttp3.okhttp</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/okhttp-urlconnection/${squareup-okhttp-version}$Fragment-Host=com.squareup.okhttp3.okhttp;bundle-version=${squareup-okhttp-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-couchdb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-couchdb/${upstream.version}</bundle>
     </feature>
-    <feature name="camel-cron" version="${project.version}" start-level="50">
+    <feature name="camel-cron" version="${upstream.version}" start-level="50">
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-cron/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cron/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-crypto' version='${project.version}' start-level='50'>
+    <feature name='camel-crypto' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[${bouncycastle-version},2)'>bouncycastle</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-crypto/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-crypto/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-crypto-pgp' version='${project.version}' start-level='50'>
+    <feature name='camel-crypto-pgp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[${bouncycastle-version},2)">bouncycastle</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-crypto-pgp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-crypto-pgp/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-csimple-joor' version='${project.version}' start-level='50'>
+    <feature name='camel-csimple-joor' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <!-- wrap protocol needed because joor has a Require-Capability: osgi.ee;filter:="(osgi.ee=UNKNOWN) in its manifest.
          The wrap does not support & , so it's not possible to add version to the filter -->
         <bundle dependency='true'>wrap:mvn:org.jooq/joor/${joor-version}$overwrite=merge&amp;Require-Capability=osgi.ee;filter:="(osgi.ee=JavaSE)"</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-csimple-joor/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-csimple-joor/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-csv' version='${project.version}' start-level='50'>
+    <feature name='camel-csv' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-csv/${commons-csv-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-csv/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-csv/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-cxf' version='${project.version}' start-level='50'>
+    <feature name='camel-cxf' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-blueprint</feature>
         <feature version='${camel-osgi-version-range}'>camel-spring</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
@@ -898,27 +941,27 @@
         <bundle dependency="true">mvn:org.apache.ws.xmlschema/xmlschema-core/${auto-detect-version}</bundle>
         <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.cglib/${cglib-version}_1</bundle>
         <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.wsdl4j/${auto-detect-version:alias=wsdl4j/wsdl4j}_1</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cxf-all/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cxf-blueprint/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cxf-transport-blueprint/${project.version}</bundle>
-    </feature>
-    <feature name='camel-cxf-spring' version='${project.version}' start-level='50'>
+        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cxf-all/${camel-cxf-all.tesb.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cxf-blueprint/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cxf-transport-blueprint/${upstream.version}</bundle>
+    </feature>
+    <feature name='camel-cxf-spring' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cxf</feature>
         <feature version='${camel-osgi-version-range}'>camel-spring</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-cxf-spring-all/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cxf-spring-all/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-datasonnet' version='${project.version}' start-level='50'>
+    <feature name='camel-datasonnet' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.datasonnet/datasonnet-mapper/${datasonnet-mapper-version}</bundle>
         <bundle dependency='true'>mvn:io.github.classgraph/classgraph/${classgraph-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.lihaoyi/ujson_2.13/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-datasonnet/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-datasonnet/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-debezium-common' version='${project.version}' start-level='50'>
+    <feature name='camel-debezium-common' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-afterburner/${jackson216-version}</bundle>
@@ -934,23 +977,23 @@
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-core/${debezium-version}$DynamicImport-Package=io.debezium.connector.*&amp;${spi-consumer}</bundle>
         <bundle>wrap:mvn:io.debezium/debezium-storage-file/${debezium-version}</bundle>
         <!-- Uncomment when the split package issue is fixed in Camel -->
-        <!--<bundle>mvn:org.apache.camel.karaf/camel-debezium-common/${project.version}</bundle>-->
+        <!--<bundle>mvn:org.apache.camel.karaf/camel-debezium-common/${upstream.version}</bundle>-->
     </feature>
-    <feature name='camel-debezium-db2' version='${project.version}' start-level='50'>
+    <feature name='camel-debezium-db2' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-debezium-common</feature>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-db2/${debezium-version}</bundle>
         <bundle>wrap:mvn:io.debezium/debezium-storage-kafka/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-debezium-db2/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-debezium-db2/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-debezium-mongodb' version='${project.version}' start-level='50'>
+    <feature name='camel-debezium-mongodb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-debezium-common</feature>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-mongodb/${debezium-version}</bundle>
         <bundle dependency='true'>mvn:org.mongodb/mongodb-driver-sync/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.mongodb/mongodb-driver-core/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.mongodb/bson/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-debezium-mongodb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-debezium-mongodb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-debezium-mysql' version='${project.version}' start-level='50'>
+    <feature name='camel-debezium-mysql' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-debezium-common</feature>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-mysql/${debezium-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-binlog/${auto-detect-version}</bundle>
@@ -960,9 +1003,9 @@
         <bundle>wrap:mvn:io.debezium/debezium-storage-kafka/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.zendesk/mysql-binlog-connector-java/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.mysql/mysql-connector-j/${debezium-mysql-connector-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-debezium-mysql/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-debezium-mysql/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-debezium-oracle' version='${project.version}' start-level='50'>
+    <feature name='camel-debezium-oracle' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-debezium-common</feature>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-oracle/${debezium-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-ddl-parser/${auto-detect-version}</bundle>
@@ -973,56 +1016,56 @@
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java-util/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.oracle.database.nls/orai18n/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.oracle.database.jdbc/ojdbc8/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-debezium-oracle/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-debezium-oracle/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-debezium-postgres' version='${project.version}' start-level='50'>
+    <feature name='camel-debezium-postgres' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-debezium-common</feature>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-postgres/${debezium-version}</bundle>
         <bundle dependency='true'>mvn:org.postgresql/postgresql/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-debezium-postgres/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-debezium-postgres/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-debezium-sqlserver' version='${project.version}' start-level='50'>
+    <feature name='camel-debezium-sqlserver' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-debezium-common</feature>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-sqlserver/${debezium-version}</bundle>
         <bundle>wrap:mvn:io.debezium/debezium-storage-kafka/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.microsoft.sqlserver/mssql-jdbc/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-debezium-sqlserver/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-debezium-sqlserver/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-debug' version='${project.version}' start-level='50'>
+    <feature name='camel-debug' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-debug/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-debug/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-dhis2' version='${project.version}' start-level='50'>
+    <feature name='camel-dhis2' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <bundle dependency='true'>wrap:mvn:org.hisp.dhis.integration.sdk/dhis2-java-sdk/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-dhis2/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-dhis2/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-digitalocean' version='${project.version}' start-level='50'>
+    <feature name='camel-digitalocean' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency='true'>mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.digitalocean-api-client/${digitalocean-api-client-version}_1</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-digitalocean/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-digitalocean/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-disruptor' version='${project.version}' start-level='50'>
+    <feature name='camel-disruptor' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.lmax/disruptor/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-disruptor/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-disruptor/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-djl' version='${project.version}' start-level='50'>
+    <feature name='camel-djl' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:ai.djl/api/${djl-version}</bundle>
         <bundle dependency='true'>wrap:mvn:ai.djl.timeseries/timeseries/${djl-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-djl/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-djl/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-dns' version='${project.version}' start-level='50'>
+    <feature name='camel-dns' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:dnsjava/dnsjava/${dnsjava-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-dns/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-dns/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-docker' version='${project.version}' start-level='50'>
+    <feature name='camel-docker' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[32,33)'>guava</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
@@ -1037,9 +1080,9 @@
         <bundle dependency='true'>wrap:mvn:com.github.docker-java/docker-java-transport-jersey/${docker-java-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.github.docker-java/docker-java-transport-netty/${docker-java-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-docker/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-docker/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-drill' version='${project.version}' start-level='50'>
+    <feature name='camel-drill' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring-jdbc</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
@@ -1052,29 +1095,29 @@
         <bundle dependency='true'>mvn:org.apache.commons/commons-text/${commons-text-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.carrotsearch/hppc/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-drill/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-drill/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-dropbox' version='${project.version}' start-level='50'>
+    <feature name='camel-dropbox' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
         <bundle dependency='true'>mvn:com.google.code.findbugs/jsr305/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-core/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.dropbox.core/dropbox-core-sdk/${dropbox-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-dropbox/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-dropbox/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-dynamic-router' version='${project.version}' start-level='50'>
+    <feature name='camel-dynamic-router' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-dynamic-router/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-dynamic-router/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ehcache' version='${project.version}' start-level='50'>
+    <feature name='camel-ehcache' version='${upstream.version}' start-level='50'>
         <feature>scr</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency="true">mvn:org.ehcache/ehcache/${ehcache3-version}</bundle>
         <bundle dependency="true">mvn:javax.cache/cache-api/${jcache-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ehcache/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ehcache/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-elasticsearch' version='${project.version}' start-level='50'>
+    <feature name='camel-elasticsearch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature prerequisite='true'>wrap</feature>
         <feature prerequisite="true">spifly</feature>
@@ -1089,9 +1132,9 @@
         <bundle dependency='true'>wrap:mvn:co.elastic.clients/elasticsearch-java/${elasticsearch-java-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.elasticsearch.client/elasticsearch-rest-client/${elasticsearch-java-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.elasticsearch.client/elasticsearch-rest-client-sniffer/${elasticsearch-java-client-sniffer-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-elasticsearch/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-elasticsearch/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-elasticsearch-rest-client' version='${project.version}' start-level='50'>
+    <feature name='camel-elasticsearch-rest-client' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature prerequisite='true'>wrap</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
@@ -1099,37 +1142,37 @@
         <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents/httpasyncclient/${httpasyncclient-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.elasticsearch.client/elasticsearch-rest-client/${elasticsearch-java-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.elasticsearch.client/elasticsearch-rest-client-sniffer/${elasticsearch-java-client-sniffer-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-elasticsearch-rest-client/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-elasticsearch-rest-client/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-elytron' version='${project.version}' start-level='50'>
+    <feature name='camel-elytron' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-undertow</feature>
         <bundle dependency='true'>wrap:mvn:org.wildfly.security.elytron-web/undertow-server/${elytron-web}</bundle>
         <bundle dependency='true'>wrap:mvn:org.wildfly.security/wildfly-elytron/${wildfly-elytron}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-elytron/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-elytron/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-etcd3' version='${project.version}' start-level='50'>
+    <feature name='camel-etcd3' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>wrap:mvn:io.etcd/jetcd-common/${jetcd-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.etcd/jetcd-core/${jetcd-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-etcd3/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-etcd3/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-exec' version='${project.version}' start-level='50'>
+    <feature name='camel-exec' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-exec/${commons-exec-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-exec/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-exec/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-fastjson' version='${project.version}' start-level='50'>
+    <feature name='camel-fastjson' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.alibaba/fastjson/${fastjson-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.alibaba.fastjson2/fastjson2/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.alibaba.fastjson2/fastjson2-extension/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-fastjson/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-fastjson/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-fhir' version='${project.version}' start-level='50'>
+    <feature name='camel-fhir' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
@@ -1142,43 +1185,43 @@
         <bundle dependency='true'>wrap:mvn:io.opentelemetry.instrumentation/opentelemetry-instrumentation-annotations/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:ca.uhn.hapi.fhir/hapi-fhir-base/${hapi-fhir-version}</bundle>
         <bundle dependency='true'>mvn:ca.uhn.hapi.fhir/hapi-fhir-client/${hapi-fhir-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-fhir/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-fhir/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-file-watch' version='${project.version}' start-level='50'>
+    <feature name='camel-file-watch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.methvin/directory-watcher/${directory-watcher-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-file-watch/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-file-watch/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-flatpack' version='${project.version}' start-level='50'>
+    <feature name='camel-flatpack' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:net.sf.flatpack/flatpack/${flatpack-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-flatpack/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-flatpack/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-flink' version='${project.version}' start-level='50'>
+    <feature name='camel-flink' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle>wrap:mvn:org.apache.flink/flink-java/${flink-version}</bundle>
         <bundle>wrap:mvn:org.apache.flink/flink-streaming-java/${flink-version}</bundle>
         <bundle>wrap:mvn:org.apache.flink/flink-runtime/${flink-version}</bundle>
         <bundle>wrap:mvn:org.apache.flink/flink-core/${flink-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-flink/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-flink/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-fop' version='${project.version}' start-level='50'>
+    <feature name='camel-fop' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.xmlgraphics/fop-core/${fop-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-fop/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-fop/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-freemarker' version='${project.version}' start-level='50'>
+    <feature name='camel-freemarker' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.freemarker/freemarker/${freemarker-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-freemarker/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-freemarker/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ftp' version='${project.version}' start-level='50'>
+    <feature name='camel-ftp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.github.mwiede/jsch/${jsch-version}</bundle>
         <bundle dependency='true'>mvn:commons-net/commons-net/${commons-net-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ftp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ftp/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-geocoder' version='${project.version}' start-level='50'>
+    <feature name='camel-geocoder' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[5,6)'>http-client</feature>
         <bundle dependency='true'>wrap:mvn:com.google.maps/google-maps-services/${google-maps-services-version}</bundle>
@@ -1186,21 +1229,21 @@
         <bundle dependency='true'>mvn:net.minidev/json-smart/${json-smart-version}</bundle>
         <bundle dependency='true'>mvn:net.minidev/accessors-smart/${json-smart-version}</bundle>
         <bundle dependency='true'>mvn:org.ow2.asm/asm/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-geocoder/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-geocoder/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-git' version='${project.version}' start-level='50'>
+    <feature name='camel-git' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.eclipse.jgit/org.eclipse.jgit/${jgit-version}</bundle>
         <bundle dependency='true'>mvn:com.googlecode.javaewah/JavaEWAH/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-git/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-git/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-github' version='${project.version}' start-level='50'>
+    <feature name='camel-github' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <!-- the latest version of gson supported by github core is 2.2.2 -->
         <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.egit.github.core/${egit-github-core-version}_1</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-github/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-github/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-bigquery' version='${project.version}' start-level='50'>
+    <feature name='camel-google-bigquery' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[33,34)'>guava</feature>
         <feature version='[4,5)'>http-client</feature>
@@ -1213,9 +1256,9 @@
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-contrib-http-util/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.api.grpc/proto-google-common-protos/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.cloud/google-cloud-bigquery/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-bigquery/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-bigquery/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-calendar' version='${project.version}' start-level='50'>
+    <feature name='camel-google-calendar' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[33,34)">guava</feature>
         <feature version='[4,5)'>http-client</feature>
@@ -1230,9 +1273,9 @@
         <bundle dependency='true'>wrap:mvn:com.google.http-client/google-http-client-apache-v2/${google-cloud-http-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.http-client/google-http-client-jackson2/${google-cloud-http-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.apis/google-api-services-calendar/${google-api-services-calendar-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-calendar/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-calendar/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-drive' version='${project.version}' start-level='50'>
+    <feature name='camel-google-drive' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[33,34)'>guava</feature>
         <feature version='[4,5)'>http-client</feature>
@@ -1250,9 +1293,9 @@
         <bundle dependency='true'>wrap:mvn:com.google.oauth-client/google-oauth-client-jetty/${google-oauth-client-version}$overwrite=merge&amp;Import-Package=com.sun.net.httpserver;resolution:=optional,*</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-contrib-http-util/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-drive/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-drive/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-functions' version='${project.version}' start-level='50'>
+    <feature name='camel-google-functions' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[33,34)">guava</feature>
         <feature version='[4,5)'>http-client</feature>
@@ -1264,9 +1307,9 @@
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-contrib-http-util/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-functions/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-functions/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-mail' version='${project.version}' start-level='50'>
+    <feature name='camel-google-mail' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[33,34)'>guava</feature>
         <feature version='[4,5)'>http-client</feature>
@@ -1281,9 +1324,9 @@
         <bundle dependency='true'>wrap:mvn:com.google.http-client/google-http-client-apache-v2/${google-cloud-http-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.http-client/google-http-client-jackson2/${google-cloud-http-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.apis/google-api-services-gmail/${google-api-services-mail-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-mail/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-mail/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-pubsub' version='${project.version}' start-level='50'>
+    <feature name='camel-google-pubsub' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[33,34)">guava</feature>
         <feature version='[4.1,5)'>netty</feature>
@@ -1320,9 +1363,9 @@
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-xds/${grpc-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-services/${grpc-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-util/${grpc-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-pubsub/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-pubsub/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-pubsub-lite' version='${project.version}' start-level='50'>
+    <feature name='camel-google-pubsub-lite' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[33,34)">guava</feature>
         <bundle dependency='true'>wrap:mvn:com.google.api/api-common/${auto-detect-version}</bundle>
@@ -1333,9 +1376,9 @@
         <bundle dependency='true'>wrap:mvn:com.google.cloud/google-cloud-pubsub/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.cloud/google-cloud-pubsublite/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-pubsub-lite/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-pubsub-lite/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-secret-manager' version='${project.version}' start-level='50'>
+    <feature name='camel-google-secret-manager' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[33,34)">guava</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
@@ -1347,9 +1390,9 @@
         <bundle dependency='true'>wrap:mvn:com.google.api.grpc/proto-google-cloud-secretmanager-v1/${google-cloud-secretmanager-bom-version}</bundle>
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.api.grpc/proto-google-cloud-pubsub-v1/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-secret-manager/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-secret-manager/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-sheets' version='${project.version}' start-level='50'>
+    <feature name='camel-google-sheets' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <feature version="[33,34)">guava</feature>
@@ -1365,9 +1408,9 @@
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-contrib-http-util/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.apis/google-api-services-sheets/${google-api-services-sheets-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-sheets/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-sheets/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-google-storage' version='${project.version}' start-level='50'>
+    <feature name='camel-google-storage' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cloudevents</feature>
         <feature version='${camel-osgi-version-range}'>camel-gson</feature>
         <feature version="[33,34)">guava</feature>
@@ -1393,31 +1436,31 @@
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-api/${grpc-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-contrib-http-util/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-google-storage/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-google-storage/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-grape' version='${project.version}' start-level='50'>
+    <feature name='camel-grape' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.groovy/groovy/${groovy-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-grape/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-grape/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-graphql' version='${project.version}' start-level='50'>
+    <feature name='camel-graphql' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[5,6)'>http-client</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-graphql/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-graphql/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-groovy' version='${project.version}' start-level='50'>
+    <feature name='camel-groovy' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.groovy/groovy/${groovy-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-groovy/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-groovy/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-grok' version='${project.version}' start-level='50'>
+    <feature name='camel-grok' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.krakens/java-grok/${java-grok-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-grok/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-grok/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-grpc' version='${project.version}' start-level='50'>
+    <feature name='camel-grpc' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>wrap:mvn:com.auth0/java-jwt/${grpc-java-jwt-version}</bundle>
@@ -1429,103 +1472,103 @@
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-netty/${grpc-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-stub/${grpc-version}</bundle>
         <bundle dependency='true'>mvn:org.javassist/javassist/${javassist-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-grpc/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-grpc/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-gson' version='${project.version}' start-level='50'>
+    <feature name='camel-gson' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.google.code.gson/gson/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-gson/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-gson/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-guava-eventbus' version='${project.version}' start-level='50'>
+    <feature name='camel-guava-eventbus' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[33,34)'>guava</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-guava-eventbus/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-guava-eventbus/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-hashicorp-vault' version='${project.version}' start-level='50'>
+    <feature name='camel-hashicorp-vault' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.springframework.vault/spring-vault-core/${spring-vault-core-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-hashicorp-vault/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-hashicorp-vault/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-hazelcast' version='${project.version}' start-level='50'>
+    <feature name='camel-hazelcast' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.hazelcast/hazelcast/${hazelcast-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-hazelcast/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-hazelcast/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-headersmap' version='${project.version}' start-level='50'>
+    <feature name='camel-headersmap' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <!-- Need to wrap the bundle because it doesn't export properly com.cedarsoftware.util -->
         <bundle dependency='true'>wrap:mvn:com.cedarsoftware/java-util/${java-util-version}$overwrite=merge&amp;Export-Package=com.cedarsoftware.util*;version=${java-util-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-headersmap/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-headersmap/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-hl7' version='${project.version}' start-level='50'>
+    <feature name='camel-hl7' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-netty</feature>
         <bundle dependency='true'>wrap:mvn:ca.uhn.hapi/hapi-base/${hapi-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-hl7/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-hl7/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-http' version='${project.version}' start-level='50'>
+    <feature name='camel-http' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[5,6)'>http-client</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http/${project.version}</bundle>
-        <bundle dependency="true">wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpcore-version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http/${upstream.version}</bundle>
+        <bundle dependency="true">wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpcore-version}$Bundle-SymbolicName=org.apache.httpcore5.h2&amp;Bundle-Version=${httpcore-version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-common' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-common' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud.sdk/huaweicloud-sdk-core/${huaweicloud-sdk-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-common/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-common/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-dms' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-dms' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-huaweicloud-common</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-dms/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-dms/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-frs' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-frs' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-huaweicloud-common</feature>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud.sdk/huaweicloud-sdk-frs/${huaweicloud-sdk-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-frs/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-frs/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-functiongraph' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-functiongraph' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-huaweicloud-common</feature>
         <bundle dependency='true'>wrap:mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud.sdk/huaweicloud-sdk-functiongraph/${huaweicloud-sdk-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-functiongraph/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-functiongraph/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-iam' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-iam' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-huaweicloud-common</feature>
         <bundle dependency='true'>wrap:mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud.sdk/huaweicloud-sdk-iam/${huaweicloud-sdk-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-iam/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-iam/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-imagerecognition' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-imagerecognition' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-huaweicloud-common</feature>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud.sdk/huaweicloud-sdk-image/${huaweicloud-sdk-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-imagerecognition/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-imagerecognition/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-obs' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-obs' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-huaweicloud-common</feature>
         <bundle dependency='true'>wrap:mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud/esdk-obs-java/${huaweicloud-obs-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-obs/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-obs/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-huaweicloud-smn' version='${project.version}' start-level='50'>
+    <feature name='camel-huaweicloud-smn' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-huaweicloud-common</feature>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud.sdk/huaweicloud-sdk-smn/${huaweicloud-sdk-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-smn/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-smn/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ical' version='${project.version}' start-level='50'>
+    <feature name='camel-ical' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:commons-beanutils/commons-beanutils/${commons-beanutils-version}</bundle>
         <bundle dependency='true'>mvn:commons-collections/commons-collections/${commons-collections-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.mnode.ical4j/ical4j/${ical4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ical/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ical/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-iec60870' version='${project.version}' start-level='50'>
+    <feature name='camel-iec60870' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <feature version='[33,34)'>guava</feature>
@@ -1535,9 +1578,9 @@
         <bundle dependency='true'>mvn:org.eclipse.neoscada.protocols/org.eclipse.neoscada.protocol.iec60870.server/${neoscada-version}</bundle>
         <bundle dependency='true'>mvn:org.eclipse.neoscada.protocols/org.eclipse.neoscada.protocol.iec60870.server.data/${neoscada-version}</bundle>
         <bundle dependency='true'>mvn:org.eclipse.neoscada.utils/org.eclipse.scada.utils/${neoscada-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-iec60870/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-iec60870/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ignite' version='${project.version}' start-level='50'>
+    <feature name='camel-ignite' version='${upstream.version}' start-level='50'>
         <details>
             <![CDATA[For performance reasons, Apache Ignite requires a JRE with the sun.nio.ch and com.sun.management low-level package.
 
@@ -1550,28 +1593,28 @@
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.ignite/ignite-core/${ignite-version}</bundle>
         <bundle dependency='true'>mvn:javax.cache/cache-api/${jcache-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ignite/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ignite/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-infinispan' version='${project.version}' start-level='50'>
+    <feature name='camel-infinispan' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-infinispan-common</feature>
         <bundle dependency='true'>wrap:mvn:org.infinispan/infinispan-client-hotrod/${infinispan-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.infinispan/infinispan-remote-query-client/${infinispan-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-infinispan/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-infinispan/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-infinispan-common' version='${project.version}' start-level='50'>
+    <feature name='camel-infinispan-common' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.infinispan/infinispan-commons/${infinispan-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.infinispan/infinispan-query-dsl/${infinispan-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-infinispan-common/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-infinispan-common/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-infinispan-embedded' version='${project.version}' start-level='50'>
+    <feature name='camel-infinispan-embedded' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-infinispan-common</feature>
         <bundle dependency='true'>wrap:mvn:org.infinispan/infinispan-core/${infinispan-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.infinispan/infinispan-query/${infinispan-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.infinispan/infinispan-component-annotations/${infinispan-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-infinispan-embedded/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-infinispan-embedded/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-influxdb' version='${project.version}' start-level='50'>
+    <feature name='camel-influxdb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/logging-interceptor/${squareup-okhttp-version}</bundle>
@@ -1582,9 +1625,9 @@
         <bundle dependency='true'>wrap:mvn:com.squareup.retrofit2/retrofit/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jetbrains.kotlin/kotlin-stdlib/${kotlin-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.influxdb/influxdb-java/${influx-java-driver-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-influxdb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-influxdb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-influxdb2' version='${project.version}' start-level='50'>
+    <feature name='camel-influxdb2' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.influxdb/influxdb-client-java/${influx-client-java-driver-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.influxdb/influxdb-client-core/${influx-client-java-driver-version}</bundle>
@@ -1605,26 +1648,26 @@
         <bundle dependency='true'>wrap:mvn:com.squareup.okio/okio-jvm/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jetbrains/annotations/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.code.gson/gson/${gson-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-influxdb2/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-influxdb2/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-irc' version='${project.version}' start-level='50'>
+    <feature name='camel-irc' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.schwering/irclib/${irclib-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-irc/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-irc/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ironmq' version='${project.version}' start-level='50'>
+    <feature name='camel-ironmq' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ironmq/${ironmq-version}_1</bundle>
         <bundle dependency='true'>mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ironmq/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ironmq/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jackson' version='${project.version}' start-level='50'>
+    <feature name='camel-jackson' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-jackson/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jackson/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jackson-avro' version='${project.version}' start-level='50'>
+    <feature name='camel-jackson-avro' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <feature version='[33,34)'>guava</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
@@ -1634,61 +1677,61 @@
         <bundle dependency='true'>mvn:org.codehaus.jackson/jackson-mapper-asl/${auto-detect-version}</bundle>
         <bundle dependency="true">mvn:com.thoughtworks.paranamer/paranamer/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-avro/${jackson2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jackson-avro/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jackson-avro/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jackson-protobuf' version='${project.version}' start-level='50'>
+    <feature name='camel-jackson-protobuf' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-protobuf/${jackson2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jackson-protobuf/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jackson-protobuf/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jacksonxml' version='${project.version}' start-level='50'>
+    <feature name='camel-jacksonxml' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-jakarta-xmlbind-annotations/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jacksonxml/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jacksonxml/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jasypt' version='${project.version}' start-level='50'>
+    <feature name='camel-jasypt' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.jasypt/jasypt/${jasypt-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jasypt/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jasypt/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-javascript' version='${project.version}' start-level='50'>
+    <feature name='camel-javascript' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.graalvm.polyglot/polyglot/${graaljs-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-javascript/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-javascript/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jaxb' version='${project.version}' start-level='50'>
+    <feature name='camel-jaxb' version='${upstream.version}' start-level='50'>
         <feature prerequisite="true">spifly</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-jaxb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jaxb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jcache' version='${project.version}' start-level='50'>
+    <feature name='camel-jcache' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:javax.cache/cache-api/${jcache-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jcache/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jcache/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jcr' version='${project.version}' start-level='50'>
+    <feature name='camel-jcr' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:javax.jcr/jcr/${jcr-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.jackrabbit/jackrabbit-jcr-commons/${jackrabbit-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jcr/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jcr/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jdbc' version='${project.version}' start-level='50'>
+    <feature name='camel-jdbc' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-jdbc/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jdbc/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jetty' version='${project.version}' start-level='50'>
-        <feature version="[12,13)">jetty</feature>
+    <feature name='camel-jetty' version='${upstream.version}' start-level='50'>
+        <feature version="${jetty12.tesb.version-range}">jetty</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle dependency="true">mvn:org.eclipse.jetty.ee10/jetty-ee10-servlet/${jetty-version}</bundle>
-        <bundle dependency="true">mvn:org.eclipse.jetty.ee10/jetty-ee10-servlets/${jetty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jetty-common/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jetty/${project.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.ee10/jetty-ee10-servlet/${jetty12.tesb.version}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.jetty.ee10/jetty-ee10-servlets/${jetty12.tesb.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jetty-common/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jetty/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jira' version='${project.version}' start-level='50'>
+    <feature name='camel-jira' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[33,34)'>guava</feature>
         <feature version='[4,5)'>http-client</feature>
@@ -1705,24 +1748,24 @@
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-contrib-http-util/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opencensus/opencensus-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:joda-time/joda-time/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jira/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jira/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jfr' version='${project.version}' start-level='50'>
+    <feature name='camel-jfr' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-jfr/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jfr/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jgroups' version='${project.version}' start-level='50'>
+    <feature name='camel-jgroups' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.jgroups/jgroups/${jgroups-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jgroups/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jgroups/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jgroups-raft' version='${project.version}' start-level='50'>
+    <feature name='camel-jgroups-raft' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.jgroups/jgroups/${jgroups-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jgroups/jgroups-raft/${jgroups-raft-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jgroups-raft/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jgroups-raft/${upstream.version}</bundle>
     </feature>
-    <feature name="camel-jms" version="${project.version}" start-level="50">
+    <feature name="camel-jms" version="${upstream.version}" start-level="50">
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${camel-osgi-spring-version}">spring-jms</feature>
         <!-- The SMX bundle of Spring JMS doesn't contain micrometer as part of its import packages, see https://issues.apache.org/jira/browse/SM-5706,
@@ -1735,101 +1778,101 @@
         <!-- Workaround END -->
         <bundle dependency='true'>mvn:io.micrometer/micrometer-observation/${micrometer-version}</bundle>
         <bundle dependency='true'>mvn:io.micrometer/micrometer-commons/${micrometer-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jms/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jms/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jmx' version='${project.version}' start-level='50'>
+    <feature name='camel-jmx' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-jmx/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jmx/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jolt' version='${project.version}' start-level='50'>
+    <feature name='camel-jolt' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.bazaarvoice.jolt/jolt-core/${jolt-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jolt/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jolt/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jooq' version='${project.version}' start-level='50'>
+    <feature name='camel-jooq' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.jooq/jooq/${jooq-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.r2dbc/r2dbc-spi/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.reactivestreams/reactive-streams/${reactive-streams-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jooq/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jooq/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-joor' version='${project.version}' start-level='50'>
+    <feature name='camel-joor' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <!-- wrap protocol needed because joor has a Require-Capability: osgi.ee;filter:="(osgi.ee=UNKNOWN) in its manifest.
          The wrap does not support & , so it's not possible to add version to the filter -->
         <bundle dependency='true'>wrap:mvn:org.jooq/joor/${joor-version}$overwrite=merge&amp;Require-Capability=osgi.ee;filter:="(osgi.ee=JavaSE)"</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-joor/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-joor/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jpa' version='${project.version}' start-level='50'>
+    <feature name='camel-jpa' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring-orm</feature>
         <bundle dependency='true'>mvn:jakarta.persistence/jakarta.persistence-api/${jakarta-persistence-api-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jpa/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jpa/${upstream.version}</bundle>
     </feature>
-    <feature name="camel-jq" version="${project.version}" start-level="50">
+    <feature name="camel-jq" version="${upstream.version}" start-level="50">
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:net.thisptr/jackson-jq/${jackson-jq-version}$overwrite=merge&amp;Export-Package=net*;version=${jackson-jq-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jruby.jcodings/jcodings/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jruby.joni/joni/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jq/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jq/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jsch' version='${project.version}' start-level='50'>
+    <feature name='camel-jsch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-ftp</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-jsch/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jsch/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jslt' version='${project.version}' start-level='50'>
+    <feature name='camel-jslt' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.schibsted.spt.data/jslt/${jslt-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jslt/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jslt/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jsonata' version='${project.version}' start-level='50'>
+    <feature name='camel-jsonata' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.dashjoin/jsonata/${jsonata-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jsonata/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jsonata/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-json-patch' version='${project.version}' start-level='50'>
+    <feature name='camel-json-patch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.github.java-json-tools/json-patch/${json-patch-version}$overwrite=merge&amp;Export-Package=com.github.fge*;version=${json-patch-version}&amp;Import-Package=com.fasterxml*,com.github*;javax*</bundle>
         <bundle dependency='true'>wrap:mvn:com.github.java-json-tools/jackson-coreutils/${auto-detect-version}$overwrite=merge&amp;Export-Package=com.github.fge*;version=${auto-detect-version}&amp;Import-Package=com.fasterxml*,com.github*;javax*</bundle>
         <bundle dependency='true'>mvn:com.github.java-json-tools/msg-simple/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.github.java-json-tools/btf/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-json-patch/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-json-patch/${upstream.version}</bundle>
     </feature>    
-    <feature name='camel-json-validator' version='${project.version}' start-level='50'>
+    <feature name='camel-json-validator' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.networknt/json-schema-validator/${networknt-json-schema-validator-version}</bundle>
         <bundle dependency='true'>mvn:com.ethlo.time/itu/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-json-validator/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-json-validator/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-json-api' version='${project.version}' start-level='50'>
+    <feature name='camel-json-api' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.github.jasminb/jsonapi-converter/${jasminb-jsonapi-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jsonapi/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jsonapi/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jsonb' version='${project.version}' start-level='50'>
+    <feature name='camel-jsonb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:jakarta.json/jakarta.json-api/${jakarta-json-api-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.json.bind/jakarta.json.bind-api/${jakarta-json-bind-api-version}</bundle>
         <bundle dependency='true'>mvn:org.eclipse/yasson/${yasson-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jsonb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jsonb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jsonpath' version='${project.version}' start-level='50'>
+    <feature name='camel-jsonpath' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.jayway.jsonpath/json-path/${json-path-version}</bundle>
         <bundle dependency='true'>mvn:net.minidev/json-smart/${json-smart-version}</bundle>
         <bundle dependency='true'>mvn:net.minidev/accessors-smart/${json-smart-version}</bundle>
         <bundle dependency='true'>mvn:org.ow2.asm/asm/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jsonpath/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jsonpath/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jta' version='${project.version}' start-level='50'>
+    <feature name='camel-jta' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:jakarta.transaction/jakarta.transaction-api/${jakarta-transaction-api-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.enterprise/jakarta.enterprise.cdi-api/${jakarta-enterprise-cdi-api-version}</bundle>
@@ -1837,42 +1880,42 @@
         <bundle dependency='true'>mvn:jakarta.inject/jakarta.inject-api/${jakarta-inject-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.el/jakarta.el-api/${jakarta-el-api-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.interceptor/jakarta.interceptor-api/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jta/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jta/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jte' version='${project.version}' start-level='50'>
+    <feature name='camel-jte' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:gg.jte/jte-runtime/${jte-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jte/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jte/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-jt400' version='${project.version}' start-level='50'>
+    <feature name='camel-jt400' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:net.sf.jt400/jt400/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-jt400/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-jt400/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-kafka' version='${project.version}' start-level='50'>
+    <feature name='camel-kafka' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.kafka/kafka-clients/${kafka-version}</bundle>
         <bundle dependency='true'>mvn:com.github.luben/zstd-jni/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-kafka/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-kafka/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-kamelet' version='${project.version}' start-level='50'>
+    <feature name='camel-kamelet' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-kamelet/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-kamelet/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-knative' version='${project.version}' start-level='50'>
+    <feature name='camel-knative' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cloudevents</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-knative/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-knative/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-knative-http' version='${project.version}' start-level='50'>
+    <feature name='camel-knative-http' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-knative</feature>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-core/${vertx-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-web/${vertx-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-web-client/${vertx-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-knative-http/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-knative-http/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-kubernetes' version='${project.version}' start-level='50'>
+    <feature name='camel-kubernetes' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:io.fabric8/kubernetes-client/${kubernetes-client-version}</bundle>
@@ -1911,51 +1954,51 @@
         <bundle dependency='true'>mvn:io.fabric8/openshift-model-storageversionmigrator/${kubernetes-client-version}</bundle>
         <bundle dependency='true'>mvn:io.fabric8/openshift-model-tuned/${kubernetes-client-version}</bundle>
         <bundle dependency='true'>mvn:io.fabric8/openshift-model-whereabouts/${kubernetes-client-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-kubernetes/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-kubernetes/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-kudu' version='${project.version}' start-level='50'>
+    <feature name='camel-kudu' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.kudu/kudu-client/${kudu-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-kudu/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-kudu/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-langchain4j-chat' version='${project.version}' start-level='50'>
+    <feature name='camel-langchain4j-chat' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-chat/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-chat/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-langchain4j-core' version='${project.version}' start-level='50'>
+    <feature name='camel-langchain4j-core' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-core/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-core/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-langchain4j-embeddings' version='${project.version}' start-level='50'>
+    <feature name='camel-langchain4j-embeddings' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-embeddings/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-embeddings/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-langchain4j-tokenizer' version='${project.version}' start-level='50'>
+    <feature name='camel-langchain4j-tokenizer' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j/${langchain4j-version}</bundle>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-tokenizer/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-tokenizer/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-langchain4j-tools' version='${project.version}' start-level='50'>
+    <feature name='camel-langchain4j-tools' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-tools/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-tools/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-langchain4j-web-search' version='${project.version}' start-level='50'>
+    <feature name='camel-langchain4j-web-search' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-web-search/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-web-search/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ldap' version='${project.version}' start-level='50'>
+    <feature name='camel-ldap' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-ldap/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ldap/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ldif' version='${project.version}' start-level='50'>
+    <feature name='camel-ldif' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.directory.api/api-i18n/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.directory.api/api-asn1-api/${auto-detect-version}</bundle>
@@ -1974,70 +2017,70 @@
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-pool2/${commons-pool2-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ldif/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ldif/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-leveldb' version='${project.version}' start-level='50'>
+    <feature name='camel-leveldb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:org.iq80.leveldb/leveldb/${leveldb-version}</bundle>
         <bundle dependency='true'>mvn:org.fusesource.leveldbjni/leveldbjni-all/${leveldbjni-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-leveldb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-leveldb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-lra' version='${project.version}' start-level='50'>
+    <feature name='camel-lra' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-lra/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-lra/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-lucene' version='${project.version}' start-level='50'>
+    <feature name='camel-lucene' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.lucene/lucene-core/${lucene-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.lucene/lucene-queryparser/${lucene-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.lucene/lucene-analysis-common/${lucene-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-lucene/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-lucene/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-lumberjack' version='${project.version}' start-level='50'>
+    <feature name='camel-lumberjack' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-lumberjack/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-lumberjack/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-lzf' version='${project.version}' start-level='50'>
+    <feature name='camel-lzf' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.ning/compress-lzf/${compress-lzf-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-lzf/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-lzf/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mail' version='${project.version}' start-level='50'>
+    <feature name='camel-mail' version='${upstream.version}' start-level='50'>
         <feature prerequisite="true">spifly</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency="true">mvn:jakarta.mail/jakarta.mail-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.eclipse.angus/angus-mail/${angus-mail-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mail/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mail/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mail-microsoft-oauth' version='${project.version}' start-level='50'>
+    <feature name='camel-mail-microsoft-oauth' version='${upstream.version}' start-level='50'>
         <feature version='[${azure-core-version},2)'>azure-msal4j</feature>
         <feature version='${camel-osgi-version-range}'>camel-mail</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:org.ow2.asm/asm/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mail-microsoft-oauth/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mail-microsoft-oauth/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mapstruct' version='${project.version}' start-level='50'>
+    <feature name='camel-mapstruct' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle>mvn:org.mapstruct/mapstruct/${mapstruct-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mapstruct/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mapstruct/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-master' version='${project.version}' start-level='50'>
+    <feature name='camel-master' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-master/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-master/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-metrics' version='${project.version}' start-level='50'>
+    <feature name='camel-metrics' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-core/${metrics-version}</bundle>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-jmx/${metrics-version}</bundle>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-json/${metrics-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-metrics/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-metrics/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-micrometer' version='${project.version}' start-level='50'>
+    <feature name='camel-micrometer' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:io.micrometer/micrometer-core/${micrometer-version}$overwrite=merge&amp;Import-Package=*;resolution:=optional</bundle>
@@ -2045,9 +2088,9 @@
         <bundle dependency='true'>mvn:io.micrometer/micrometer-registry-jmx/${micrometer-version}</bundle>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-core/${metrics-version}</bundle>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-jmx/${metrics-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-micrometer/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-micrometer/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-micrometer-prometheus' version='${project.version}' start-level='50'>
+    <feature name='camel-micrometer-prometheus' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-micrometer</feature>
         <feature version='${camel-osgi-version-range}'>camel-platform-http-main</feature>
         <bundle dependency='true'>mvn:io.prometheus/prometheus-metrics-exposition-formats/${auto-detect-version}</bundle>
@@ -2061,9 +2104,9 @@
         <bundle dependency='true'>wrap:mvn:io.prometheus/prometheus-metrics-config/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:io.micrometer/micrometer-registry-prometheus/${micrometer-version}</bundle>
         <bundle dependency='true'>mvn:io.smallrye/jandex/${jandex-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-micrometer-prometheus/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-micrometer-prometheus/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-microprofile-config' version='${project.version}' start-level='50'>
+    <feature name='camel-microprofile-config' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.smallrye.config/smallrye-config/${smallrye-config-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.smallrye.config/smallrye-config-core/${smallrye-config-version}</bundle>
@@ -2074,9 +2117,9 @@
         <bundle dependency='true'>mvn:jakarta.el/jakarta.el-api/${jakarta-el-api-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.interceptor/jakarta.interceptor-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.enterprise/jakarta.enterprise.lang-model/${jakarta-enterprise-cdi-api-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-microprofile-config/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-microprofile-config/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-microprofile-fault-tolerance' version='${project.version}' start-level='50'>
+    <feature name='camel-microprofile-fault-tolerance' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.smallrye/smallrye-fault-tolerance/${smallrye-fault-tolerance-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.smallrye/smallrye-fault-tolerance-core/${smallrye-fault-tolerance-version}</bundle>
@@ -2087,9 +2130,9 @@
         <bundle dependency='true'>mvn:jakarta.interceptor/jakarta.interceptor-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.enterprise/jakarta.enterprise.lang-model/${jakarta-enterprise-cdi-api-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.inject/jakarta.inject-api/${jakarta-inject-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-microprofile-fault-tolerance/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-microprofile-fault-tolerance/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-microprofile-health' version='${project.version}' start-level='50'>
+    <feature name='camel-microprofile-health' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.smallrye/smallrye-health/${smallrye-health-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.smallrye/smallrye-health-api/${smallrye-health-version}</bundle>
@@ -2100,108 +2143,108 @@
         <bundle dependency='true'>mvn:jakarta.interceptor/jakarta.interceptor-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.enterprise/jakarta.enterprise.lang-model/${jakarta-enterprise-cdi-api-version}</bundle>
         <bundle dependency='true'>mvn:jakarta.inject/jakarta.inject-api/${jakarta-inject-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-microprofile-health/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-microprofile-health/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-milvus' version='${project.version}' start-level='50'>
+    <feature name='camel-milvus' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.milvus/milvus-sdk-java/${milvus-client-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-milvus/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-milvus/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mina' version='${project.version}' start-level='50'>
+    <feature name='camel-mina' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.mina/mina-core/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mina/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mina/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-minio' version='${project.version}' start-level='50'>
+    <feature name='camel-minio' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.minio/minio/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/okhttp/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-minio/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-minio/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mllp' version='${project.version}' start-level='50'>
+    <feature name='camel-mllp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-mllp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mllp/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mongodb' version='${project.version}' start-level='50'>
+    <feature name='camel-mongodb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <bundle dependency='true'>mvn:org.mongodb/bson/${mongo-java-driver-version}</bundle>
         <bundle dependency='true'>mvn:org.mongodb/mongodb-driver-core/${mongo-java-driver-version}</bundle>
         <bundle dependency='true'>mvn:org.mongodb/mongodb-driver-sync/${mongo-java-driver-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mongodb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mongodb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mongodb-gridfs' version='${project.version}' start-level='50'>
+    <feature name='camel-mongodb-gridfs' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
         <bundle dependency='true'>mvn:org.mongodb/bson/${mongo-java-driver-version}</bundle>
         <bundle dependency='true'>mvn:org.mongodb/mongodb-driver-core/${mongo-java-driver-version}</bundle>
         <bundle dependency='true'>mvn:org.mongodb/mongodb-driver-sync/${mongo-java-driver-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mongodb-gridfs/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mongodb-gridfs/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mustache' version='${project.version}' start-level='50'>
+    <feature name='camel-mustache' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.github.spullara.mustache.java/compiler/${mustache-java-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mustache/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mustache/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mvel' version='${project.version}' start-level='50'>
+    <feature name='camel-mvel' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.ow2.asm/asm/${asm-version}</bundle>
         <bundle dependency='true'>mvn:org.mvel/mvel2/${mvel-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mvel/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mvel/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-mybatis' version='${project.version}' start-level='50'>
+    <feature name='camel-mybatis' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.mybatis/mybatis/${mybatis-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-mybatis/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-mybatis/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-nats' version='${project.version}' start-level='50'>
+    <feature name='camel-nats' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.nats/jnats/${jnats-version}$overwrite=merge&amp;Export-Package=io.nats.client.*;version=${jnats-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-nats/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-nats/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-netty' version='${project.version}' start-level='50'>
+    <feature name='camel-netty' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>mvn:io.netty/netty-transport-native-epoll/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-transport-classes-epoll/${netty-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-pool2/${commons-pool2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-netty/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-netty/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-netty-http' version='${project.version}' start-level='50'>
+    <feature name='camel-netty-http' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-netty</feature>
         <bundle dependency='true'>mvn:io.netty/netty-codec-http/${netty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-netty-http/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-netty-http/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-nitrite' version='${project.version}' start-level='50'>
+    <feature name='camel-nitrite' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.dizitart/nitrite/${nitrite-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-nitrite/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-nitrite/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-oaipmh' version='${project.version}' start-level='50'>
+    <feature name='camel-oaipmh' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[5,6)">http-client</feature>
         <bundle dependency='true'>mvn:joda-time/joda-time/${jodatime2-version}</bundle>
         <bundle dependency='true'>mvn:org.jsoup/jsoup/${jsoup-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-oaipmh/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-oaipmh/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-observation' version='${project.version}' start-level='50'>
+    <feature name='camel-observation' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-tracing</feature>
         <bundle dependency='true'>mvn:io.micrometer/micrometer-observation/${micrometer-version}</bundle>
         <bundle dependency='true'>mvn:io.micrometer/micrometer-commons/${micrometer-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.micrometer/micrometer-tracing/${micrometer-tracing-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-observation/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-observation/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ognl' version='${project.version}' start-level='50'>
+    <feature name='camel-ognl' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:ognl/ognl/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ognl/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ognl/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-olingo2' version='${project.version}' start-level='50'>
+    <feature name='camel-olingo2' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency='true'>mvn:org.apache.httpcomponents/httpasyncclient-osgi/${httpasyncclient-version}</bundle>
@@ -2209,9 +2252,9 @@
         <bundle dependency='true'>mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.olingo/olingo-odata2-api/${olingo2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.olingo/olingo-odata2-core/${olingo2-version}$overwrite=merge&amp;Import-Package=com.*,org.*,javax.xml.*</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-olingo2/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-olingo2/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-olingo4' version='${project.version}' start-level='50'>
+    <feature name='camel-olingo4' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[4,5)">http-client</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
@@ -2236,9 +2279,9 @@
         <bundle dependency='true'>mvn:io.netty/netty-resolver/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-http/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-olingo4/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-olingo4/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-openapi-java' version='${project.version}' start-level='50'>
+    <feature name='camel-openapi-java' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[3,4)'>jakarta-validation</feature>
@@ -2253,16 +2296,16 @@
         <bundle dependency='true'>mvn:io.swagger.core.v3/swagger-models-jakarta/${swagger-openapi3-version}</bundle>
         <bundle dependency='true'>mvn:io.swagger.core.v3/swagger-core-jakarta/${swagger-openapi3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-openapi-java/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-openapi-java/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-openapi-validator' version='${project.version}' start-level='50'>
+    <feature name='camel-openapi-validator' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:io.swagger.core.v3/swagger-models/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.atlassian.oai/swagger-request-validator-core/${swagger-request-validator-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-openapi-validator/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-openapi-validator/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-opensearch' version='${project.version}' start-level='50'>
+    <feature name='camel-opensearch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
@@ -2271,9 +2314,9 @@
         <bundle dependency='true'>wrap:mvn:org.opensearch.client/opensearch-java/${opensearch-java-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.opensearch.client/opensearch-rest-client/${opensearch-rest-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.opensearch.client/opensearch-rest-client-sniffer/${opensearch-rest-client-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-opensearch/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-opensearch/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-openstack' version='${project.version}' start-level='50'>
+    <feature name='camel-openstack' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[33,34)'>guava</feature>
@@ -2287,35 +2330,35 @@
         <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/okhttp/${squareup-okhttp-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/logging-interceptor/${squareup-okhttp-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-openstack/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-openstack/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-opentelemetry' version='${project.version}' start-level='50'>
+    <feature name='camel-opentelemetry' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-tracing</feature>
         <bundle dependency='true'>wrap:mvn:io.opentelemetry/opentelemetry-api/${opentelemetry-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opentelemetry/opentelemetry-sdk/${opentelemetry-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opentelemetry/opentelemetry-context/${opentelemetry-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.opentelemetry/opentelemetry-semconv/${opentelemetry-alpha-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-opentelemetry/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-opentelemetry/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-optaplanner' version='${project.version}' start-level='50'>
+    <feature name='camel-optaplanner' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.kie/kie-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.optaplanner/optaplanner-core-impl/${optaplanner-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-optaplanner/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-optaplanner/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-paho' version='${project.version}' start-level='50'>
+    <feature name='camel-paho' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle>mvn:org.eclipse.paho/org.eclipse.paho.client.mqttv3/${paho-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-paho/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-paho/${upstream.version}</bundle>
     </feature>
 <!--    Paho v5 does not work in OSGi: https://github.com/eclipse/paho.mqtt.java/issues/857-->
-    <feature name='camel-paho-mqtt5' version='${project.version}' start-level='50'>
+    <feature name='camel-paho-mqtt5' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle>wrap:mvn:org.eclipse.paho/org.eclipse.paho.mqttv5.client/${paho-version}$overwrite=merge&amp;Export-Package=org.eclipse.paho.mqttv5.*;version=${paho-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-paho-mqtt5/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-paho-mqtt5/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-parquet-avro' version='${project.version}' start-level='50'>
+    <feature name='camel-parquet-avro' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
@@ -2325,40 +2368,40 @@
         <bundle dependency='true'>wrap:mvn:org.apache.parquet/parquet-common/${parquet-avro-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.parquet/parquet-avro/${parquet-avro-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.parquet/parquet-hadoop/${parquet-avro-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-parquet-avro/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-parquet-avro/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-pdf' version='${project.version}' start-level='50'>
+    <feature name='camel-pdf' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.pdfbox/pdfbox/${pdfbox-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.pdfbox/pdfbox-io/${pdfbox-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.pdfbox/fontbox/${pdfbox-version}</bundle>
         <bundle dependency='true'>mvn:commons-logging/commons-logging/${commons-logging-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-pdf/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-pdf/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-pg-replication-slot' version='${project.version}' start-level='50'>
+    <feature name='camel-pg-replication-slot' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.postgresql/postgresql/${pgjdbc-driver-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-pg-replication-slot/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-pg-replication-slot/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-pgevent' version='${project.version}' start-level='50'>
+    <feature name='camel-pgevent' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>wrap:mvn:com.impossibl.pgjdbc-ng/pgjdbc-ng/${pgjdbc-ng-driver-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-pgevent/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-pgevent/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-pinecone' version='${project.version}' start-level='50'>
+    <feature name='camel-pinecone' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.pinecone/pinecone-client/${pinecone-client-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-pinecone/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-pinecone/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-platform-http' version='${project.version}' start-level='50'>
+    <feature name='camel-platform-http' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-platform-http/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-platform-http/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-platform-http-jolokia' version='${project.version}' start-level='50'>
+    <feature name='camel-platform-http-jolokia' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-platform-http</feature>
         <feature version='[4.1,5)'>netty</feature>
         <feature version="[5,6)">jakarta-servlet</feature>
@@ -2372,25 +2415,25 @@
         <bundle dependency='true'>wrap:mvn:org.jolokia/jolokia-service-jmx/${jolokia-version}$overwrite=merge&amp;Export-Package=org.jolokia.*;version=${jolokia-version}</bundle>
         <!-- Use the wrap protocol because it doesn't export org.jolokia.service.serializer -->
         <bundle dependency='true'>wrap:mvn:org.jolokia/jolokia-service-serializer/${jolokia-version}$overwrite=merge&amp;Export-Package=org.jolokia.*;version=${jolokia-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-platform-http-jolokia/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-platform-http-jolokia/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-platform-http-main' version='${project.version}' start-level='50'>
+    <feature name='camel-platform-http-main' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-platform-http-vertx</feature>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-auth-properties/${vertx-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-auth-jwt/${vertx-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-platform-http-main/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-platform-http-main/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-platform-http-vertx' version='${project.version}' start-level='50'>
+    <feature name='camel-platform-http-vertx' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-platform-http</feature>
         <feature version='${camel-osgi-version-range}'>camel-vertx-common</feature>
-        <bundle dependency='true'>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-auth-common/${vertx-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-auth-properties/${vertx-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-web/${vertx-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-http/${netty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-platform-http-vertx/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-platform-http-vertx/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-plc4x' version='${project.version}' start-level='50'>
+    <feature name='camel-plc4x' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:org.apache.plc4x/plc4j-api/${plc4x-version}</bundle>
@@ -2401,13 +2444,13 @@
         <bundle dependency='true'>mvn:org.apache.commons/commons-collections4/${commons-collections4-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-math3/${commons-math3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-plc4x/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-plc4x/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-printer' version='${project.version}' start-level='50'>
+    <feature name='camel-printer' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-printer/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-printer/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-protobuf' version='${project.version}' start-level='50'>
+    <feature name='camel-protobuf' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[32,33)">guava</feature>
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf-version}</bundle>
@@ -2415,26 +2458,26 @@
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>mvn:com.google.code.findbugs/jsr305/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-protobuf/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-protobuf/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-pubnub' version='${project.version}' start-level='50'>
+    <feature name='camel-pubnub' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.pubnub/pubnub-gson/${pubnub-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.pubnub/pubnub-core-api/${pubnub-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.pubnub/pubnub-gson-api/${pubnub-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-pubnub/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-pubnub/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-pulsar' version='${project.version}' start-level='50'>
+    <feature name='camel-pulsar' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.pulsar/pulsar-client-admin/${pulsar-version}$Export-Package=org.apache.pulsar*;version=${pulsar-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-pulsar/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-pulsar/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-python' version='${project.version}' start-level='50'>
+    <feature name='camel-python' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.python/jython-standalone/${jython-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-python/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-python/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-qdrant' version='${project.version}' start-level='50'>
+    <feature name='camel-qdrant' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[33,34)">guava</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
@@ -2444,44 +2487,44 @@
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-services/${grpc-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-stub/${grpc-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-netty-shaded/${grpc-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-qdrant/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-qdrant/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-quartz' version='${project.version}' start-level='50'>
+    <feature name='camel-quartz' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-cron</feature>
         <bundle dependency='true'>wrap:mvn:com.mchange/c3p0/${c3p0-version}</bundle>
         <bundle dependency='true'>mvn:com.zaxxer/HikariCP-java7/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.quartz-scheduler/quartz/${quartz-version}$overwrite=merge&amp;DynamicImport-Package=org.apache.camel.component.quartz</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-quartz/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-quartz/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-quickfix' version='${project.version}' start-level='50'>
-        <feature version='${project.version}'>camel-core</feature>
+    <feature name='camel-quickfix' version='${upstream.version}' start-level='50'>
+        <feature version='${upstream.version}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.quickfixj/quickfixj-core/${quickfixj-version}</bundle>
         <bundle dependency='true'>mvn:org.quickfixj/quickfixj-messages-all/${quickfixj-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-quickfix/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-quickfix/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-reactive-executor-tomcat' version='${project.version}' start-level='50'>
+    <feature name='camel-reactive-executor-tomcat' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-reactive-executor-tomcat/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-reactive-executor-tomcat/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-reactive-executor-vertx' version='${project.version}' start-level='50'>
+    <feature name='camel-reactive-executor-vertx' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-core/${vertx-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-reactive-executor-vertx/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-reactive-executor-vertx/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-reactive-streams' version='${project.version}' start-level='50'>
+    <feature name='camel-reactive-streams' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.reactivestreams/reactive-streams/${reactive-streams-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-reactive-streams/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-reactive-streams/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-reactor' version='${project.version}' start-level='50'>
+    <feature name='camel-reactor' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-reactive-streams</feature>
         <bundle dependency='true'>mvn:io.projectreactor/reactor-core/${reactor-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-reactor/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-reactor/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-redis' version='${project.version}' start-level='50'>
+    <feature name='camel-redis' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
@@ -2504,22 +2547,22 @@
         <bundle dependency='true'>mvn:net.bytebuddy/byte-buddy/${bytebuddy-version}</bundle>
         <bundle dependency='true'>mvn:io.projectreactor/reactor-core/${reactor-version}</bundle>
         <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-redis/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-redis/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-resilience4j' version='${project.version}' start-level='50'>
+    <feature name='camel-resilience4j' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.github.resilience4j/resilience4j-core/${resilience4j-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.github.resilience4j/resilience4j-bulkhead/${resilience4j-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.github.resilience4j/resilience4j-circuitbreaker/${resilience4j-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.github.resilience4j/resilience4j-timelimiter/${resilience4j-version}</bundle>
         <bundle dependency='true'>mvn:io.vavr/vavr/${vavr-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-resilience4j/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-resilience4j/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-resourceresolver-github' version='${project.version}' start-level='50'>
+    <feature name='camel-resourceresolver-github' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-resourceresolver-github/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-resourceresolver-github/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-rest-openapi' version='${project.version}' start-level='50'>
+    <feature name='camel-rest-openapi' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-platform-http</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:io.swagger.parser.v3/swagger-parser-core/${swagger-openapi3-java-parser-version}</bundle>
@@ -2527,37 +2570,37 @@
         <bundle dependency='true'>mvn:io.swagger.core.v3/swagger-core-jakarta/${swagger-openapi3-version}</bundle>
         <bundle dependency='true'>mvn:io.swagger.core.v3/swagger-models-jakarta/${swagger-openapi3-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-rest-openapi/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-rest-openapi/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-robotframework' version='${project.version}' start-level='50'>
+    <feature name='camel-robotframework' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.robotframework/robotframework/${robotframework-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.python/jython/${jython-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.python/jython-standalone/${jython-standalone-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-robotframework/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-robotframework/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-rocketmq' version='${project.version}' start-level='50'>
+    <feature name='camel-rocketmq' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.rocketmq/rocketmq-acl/${rocketmq-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.rocketmq/rocketmq-client/${rocketmq-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.rocketmq/rocketmq-common/${rocketmq-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.rocketmq/rocketmq-remoting/${rocketmq-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-rocketmq/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-rocketmq/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-rss' version='${project.version}' start-level='50'>
+    <feature name='camel-rss' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-atom</feature>
         <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jdom/${auto-detect-version:alias=org.jdom/jdom2}_1</bundle>
         <bundle dependency="true">mvn:com.rometools/rome/${rome-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-rss/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-rss/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-rxjava' version='${project.version}' start-level='50'>
+    <feature name='camel-rxjava' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-reactive-streams</feature>
         <bundle dependency='true'>mvn:io.reactivex.rxjava2/rxjava/${rxjava2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-rxjava/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-rxjava/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-salesforce' version='${project.version}' start-level='50'>
-        <feature version="[12,13)">jetty</feature>
+    <feature name='camel-salesforce' version='${upstream.version}' start-level='50'>
+        <feature version="${jetty12.tesb.version-range}">jetty</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[32,33)">guava</feature>
@@ -2579,32 +2622,32 @@
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-client-http-jetty/${cometd-java-client-version}</bundle>
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-client-http-common/${cometd-java-client-version}</bundle>
         <bundle dependency='true'>mvn:org.cometd.java/cometd-java-common/${cometd-java-client-version}</bundle>
-        <bundle dependency='true'>mvn:org.eclipse.jetty/jetty-alpn-client/${jetty-version}</bundle>
-        <bundle dependency='true'>wrap:mvn:org.eclipse.jetty/jetty-client/${jetty-version}$overwrite=merge&amp;Export-Package=org*;version=${jetty-version}</bundle>
+        <bundle dependency='true'>mvn:org.eclipse.jetty/jetty-alpn-client/${jetty12.tesb.version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.eclipse.jetty/jetty-client/${jetty12.tesb.version}$overwrite=merge&amp;Export-Package=org*;version=${jetty12.tesb.version}</bundle>
         <bundle dependency='true'>wrap:mvn:tech.allegro.schema.json2avro/converter/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-salesforce/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-salesforce/${upstream.version}</bundle>
     </feature>   
-    <feature name='camel-sap-netweaver' version='${project.version}' start-level='50'>
+    <feature name='camel-sap-netweaver' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-sap-netweaver/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-sap-netweaver/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-saxon' version='${project.version}' start-level='50'>
+    <feature name='camel-saxon' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency="true">wrap:mvn:net.sf.saxon/Saxon-HE/${saxon-version}</bundle>
         <bundle dependency="true">wrap:mvn:org.xmlresolver/xmlresolver/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-saxon/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-saxon/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-schematron' version='${project.version}' start-level='50'>
+    <feature name='camel-schematron' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-schematron/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-schematron/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-service' version='${project.version}' start-level='50'>
+    <feature name='camel-service' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-service/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-service/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-servicenow' version='${project.version}' start-level='50'>
+    <feature name='camel-servicenow' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[5,6)">jakarta-servlet</feature>
@@ -2622,17 +2665,17 @@
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-json-basic/${cxf-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-jose-jaxrs/${cxf-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-jose/${cxf-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-servicenow/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-servicenow/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-servlet' version='${project.version}' start-level='50'>
+    <feature name='camel-servlet' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-servlet/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-common/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-servlet/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-shiro' version='${project.version}' start-level='50'>
+    <feature name='camel-shiro' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.shiro/shiro-core/${shiro-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.shiro/shiro-event/${shiro-version}</bundle>
@@ -2647,68 +2690,68 @@
         <bundle dependency='true'>mvn:commons-beanutils/commons-beanutils/${commons-beanutils-version}</bundle>
         <bundle dependency='true'>mvn:commons-collections/commons-collections/${commons-collections-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.shiro/shiro-jakarta-ee/${shiro-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-shiro/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-shiro/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-sjms' version='${project.version}' start-level='50'>
+    <feature name='camel-sjms' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency="true">mvn:jakarta.jms/jakarta.jms-api/${jakarta-jms-api-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-sjms/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-sjms/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-sjms2' version='${project.version}' start-level='50'>
+    <feature name='camel-sjms2' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-sjms</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-sjms2/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-sjms2/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-slack' version='${project.version}' start-level='50'>
+    <feature name='camel-slack' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.google.code.gson/gson/${gson-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.slack.api/slack-api-client/${slack-api-model-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.slack.api/slack-api-model/${slack-api-model-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/okhttp/${squareup-okhttp-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-slack/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-slack/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-smb' version='${project.version}' start-level='50'>
-        <feature version='${project.version}'>camel-core</feature>
+    <feature name='camel-smb' version='${upstream.version}' start-level='50'>
+        <feature version='${upstream.version}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.hierynomus/smbj/${smbj-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-smb/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-smb/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-smooks' version='${project.version}' start-level='50'>
+    <feature name='camel-smooks' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.smooks/smooks-core/${smooks-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.smooks/smooks-api/${smooks-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-smooks/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-smooks/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-smpp' version='${project.version}' start-level='50'>
+    <feature name='camel-smpp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.jsmpp/jsmpp/${jsmpp-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-smpp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-smpp/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-snakeyaml' version='${project.version}' start-level='50'>
+    <feature name='camel-snakeyaml' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-snakeyaml/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-snakeyaml/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-snmp' version='${project.version}' start-level='50'>
+    <feature name='camel-snmp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.snmp4j/snmp4j/${snmp4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-snmp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-snmp/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-soap' version='${project.version}' start-level='50'>
+    <feature name='camel-soap' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jaxb</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-soap/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-soap/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-solr' version='${project.version}' start-level='50'>
+    <feature name='camel-solr' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4,5)'>http-client</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.solr/solr-solrj/${solr-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-solr/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-solr/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-splunk' version='${project.version}' start-level='50'>
+    <feature name='camel-splunk' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.splunk/${splunk-version}</bundle>
         <bundle dependency='true'>mvn:joda-time/joda-time/${jodatime2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-splunk/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-splunk/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-splunk-hec' version='${project.version}' start-level='50'>
+    <feature name='camel-splunk-hec' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[5,6)'>http-client</feature>
@@ -2716,30 +2759,30 @@
         <bundle dependency='true'>mvn:commons-beanutils/commons-beanutils/${commons-beanutils-version}</bundle>
         <bundle dependency='true'>mvn:commons-collections/commons-collections/${commons-collections-version}</bundle>
         <bundle dependency='true'>mvn:commons-digester/commons-digester/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-splunk-hec/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-splunk-hec/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-batch' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-batch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring</feature>
         <bundle dependency='true'>wrap:mvn:org.springframework.batch/spring-batch-core/${spring-batch-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.springframework.batch/spring-batch-infrastructure/${spring-batch-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-batch/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-batch/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-jdbc' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-jdbc' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jdbc</feature>
         <feature version='${camel-osgi-spring-version}'>spring-jdbc</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-jdbc/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-jdbc/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-ldap' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-ldap' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.springframework.ldap/spring-ldap-core/${spring-ldap-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-ldap/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-ldap/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-main' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-main' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-spring</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-main/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-main/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-rabbitmq' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-rabbitmq' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring-tx</feature>
         <feature version='${camel-osgi-spring-version}'>spring-messaging</feature>
@@ -2748,50 +2791,50 @@
         <bundle dependency='true'>wrap:mvn:io.micrometer/micrometer-commons/${micrometer-version}$overwrite=merge&amp;Import-Package=*;resolution:=optional</bundle>
         <bundle dependency='true'>mvn:io.micrometer/micrometer-observation/${micrometer-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.micrometer/micrometer-core/${micrometer-version}$overwrite=merge&amp;Import-Package=*;resolution:=optional</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-rabbitmq/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-rabbitmq/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-redis' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-redis' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring-tx</feature>
         <bundle dependency='true'>wrap:mvn:org.springframework.data/spring-data-commons/${spring-data-redis-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.springframework.data/spring-data-redis/${spring-data-redis-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-redis/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-redis/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-security' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-security' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring</feature>
         <bundle dependency='true'>wrap:mvn:org.springframework.security/spring-security-core/${spring-security-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.springframework.security/spring-security-config/${spring-security-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-security/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-security/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-spring-ws' version='${project.version}' start-level='50'>
+    <feature name='camel-spring-ws' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-xslt-saxon</feature>
         <feature version='${camel-osgi-spring-version}'>spring</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
         <bundle dependency='true'>wrap:mvn:org.springframework.ws/spring-ws-core/${spring-ws-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.springframework.ws/spring-xml/${spring-ws-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-spring-ws/${project.version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-spring-ws/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-sql' version='${project.version}' start-level='50'>
+    <feature name='camel-sql' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring-tx</feature>
         <feature version='${camel-osgi-spring-version}'>spring-jdbc</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-sql/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-sql/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-ssh' version='${project.version}' start-level='50'>
+    <feature name='camel-ssh' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[${bouncycastle-version},2)">bouncycastle</feature>
         <bundle dependency='true'>mvn:org.bouncycastle/bcutil-jdk18on/${bouncycastle-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.sshd/sshd-osgi/${sshd-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-ssh/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-ssh/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-stax' version='${project.version}' start-level='50'>
+    <feature name='camel-stax' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.fasterxml.woodstox/woodstox-core/${woodstox-core-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-stax/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-stax/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-stitch' version='${project.version}' start-level='50'>
+    <feature name='camel-stitch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
@@ -2806,9 +2849,9 @@
         <bundle dependency='true'>mvn:io.netty/netty-codec-socks/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-http/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-http2/${netty-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-stitch/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-stitch/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-stomp' version='${project.version}' start-level='50'>
+    <feature name='camel-stomp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <!--
             The bundle wrap:mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1 provides javax.jms package
@@ -2820,29 +2863,29 @@
         <bundle dependency='true'>mvn:org.fusesource.hawtbuf/hawtbuf/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.fusesource.hawtdispatch/hawtdispatch/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.fusesource.hawtdispatch/hawtdispatch-transport/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-stomp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-stomp/${upstream.version}</bundle>
     </feature>    
-    <feature name='camel-stream' version='${project.version}' start-level='50'>
+    <feature name='camel-stream' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-stream/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-stream/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-string-template' version='${project.version}' start-level='50'>
+    <feature name='camel-string-template' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.antlr/ST4/${stringtemplate-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-stringtemplate/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-stringtemplate/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-syslog' version='${project.version}' start-level='50'>
+    <feature name='camel-syslog' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-netty</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-syslog/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-syslog/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-swift' version='${project.version}' start-level='50'>
+    <feature name='camel-swift' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:com.prowidesoftware/pw-swift-core/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.prowidesoftware/pw-iso20022/${prowide-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-swift/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-swift/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-tahu' version='${project.version}' start-level='50'>
+    <feature name='camel-tahu' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle>mvn:org.eclipse.tahu/tahu-core/${tahu-version}</bundle>
@@ -2850,22 +2893,22 @@
         <bundle>mvn:org.eclipse.tahu/tahu-host/${tahu-version}</bundle>
         <bundle>mvn:org.eclipse.paho/org.eclipse.paho.client.mqttv3/${paho-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-tahu/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-tahu/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-tarfile' version='${project.version}' start-level='50'>
+    <feature name='camel-tarfile' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-tarfile/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-tarfile/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-telegram' version='${project.version}' start-level='50'>
+    <feature name='camel-telegram' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-webhook</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-telegram/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-telegram/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-test' version='${project.version}' start-level='50'>
+    <feature name='camel-test' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.junit.platform/junit-platform-commons/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.junit.platform/junit-platform-engine/${auto-detect-version}</bundle>
@@ -2878,55 +2921,55 @@
         <bundle dependency='true'>mvn:org.objenesis/objenesis/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.opentest4j/opentest4j/${auto-detect-version}</bundle>
         <bundle dependency='true'> mvn:org.junit.jupiter/junit-jupiter-api/${junit-jupiter-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-test-junit5/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-test-junit5/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-test-spring' version='${project.version}' start-level='50'>
+    <feature name='camel-test-spring' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-spring</feature>
         <feature version='${camel-osgi-version-range}'>camel-test</feature>
         <bundle dependency='true'>wrap:mvn:org.springframework/spring-test/${spring-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-test-spring/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-test-spring/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-threadpoolfactory-vertx' version='${project.version}' start-level='50'>
+    <feature name='camel-threadpoolfactory-vertx' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-core/${vertx-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-threadpoolfactory-vertx/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-threadpoolfactory-vertx/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-thrift' version='${project.version}' start-level='50'>
+    <feature name='camel-thrift' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.javassist/javassist/${javassist-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.thrift/libthrift/${libthrift-version}$overwrite=merge&amp;Export-Package=org.apache.thrift*;version=${libthrift-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-thrift/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-thrift/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-thymeleaf' version='${project.version}' start-level='50'>
+    <feature name='camel-thymeleaf' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.thymeleaf/thymeleaf/${thymeleaf-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-thymeleaf/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-thymeleaf/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-tika' version='${project.version}' start-level='50'>
+    <feature name='camel-tika' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.tika/tika-core/${tika-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.tika/tika-parser-html-commons/${tika-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-tika/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-tika/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-tracing' version='${project.version}' start-level='50'>
+    <feature name='camel-tracing' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-tracing/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-tracing/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-twilio' version='${project.version}' start-level='50'>
+    <feature name='camel-twilio' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency='true'>wrap:mvn:com.twilio.sdk/twilio/${twilio-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-twilio/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-twilio/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-twitter' version='${project.version}' start-level='50'>
+    <feature name='camel-twitter' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.twitter4j/twitter4j-core/${twitter4j-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-twitter/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-twitter/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-undertow' version='${project.version}' start-level='50'>
+    <feature name='camel-undertow' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
         <bundle dependency='true'>mvn:io.undertow/undertow-core/${undertow-version}</bundle>
@@ -2936,11 +2979,11 @@
         <bundle dependency='true'>mvn:org.jboss.xnio/xnio-nio/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jboss.threads/jboss-threads/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.wildfly.client/wildfly-client-config/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-undertow/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-attachments/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-undertow/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-undertow-spring-security' version='${project.version}' start-level='50'>
+    <feature name='camel-undertow-spring-security' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-undertow</feature>
         <feature version='${camel-osgi-spring-version}'>spring</feature>
@@ -2948,61 +2991,61 @@
         <bundle dependency='true'>wrap:mvn:org.springframework.security/spring-security-oauth2-client/${spring-security-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.springframework.security/spring-security-oauth2-jose/${spring-security-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.springframework.security/spring-security-oauth2-resource-server/${spring-security-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-undertow-spring-security/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-undertow-spring-security/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-univocity-parsers' version='${project.version}' start-level='50'>
+    <feature name='camel-univocity-parsers' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:com.univocity/univocity-parsers/${univocity-parsers-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-univocity-parsers/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-univocity-parsers/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-vertx' version='${project.version}' start-level='50'>
+    <feature name='camel-vertx' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-vertx-common</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-vertx/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-vertx/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-vertx-common' version='${project.version}' start-level='50'>
+    <feature name='camel-vertx-common' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-core/${vertx-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-vertx-common/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-vertx-common/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-vertx-http' version='${project.version}' start-level='50'>
+    <feature name='camel-vertx-http' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-vertx-common</feature>
-        <bundle dependency='true'>mvn:org.apache.camel.karaf/camel-http-base/${project.version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-web-client/${vertx-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-web-common/${vertx-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-vertx-http/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-vertx-http/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-vertx-websocket' version='${project.version}' start-level='50'>
+    <feature name='camel-vertx-websocket' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-vertx-common</feature>
         <bundle dependency='true'>wrap:mvn:io.vertx/vertx-web/${vertx-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-vertx-websocket/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-vertx-websocket/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-velocity' version='${project.version}' start-level='50'>
+    <feature name='camel-velocity' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.velocity/velocity-engine-core/${velocity-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-velocity/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-velocity/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-wal' version='${project.version}' start-level='50'>
+    <feature name='camel-wal' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-wal/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-wal/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-wasm' version='${project.version}' start-level='50'>
+    <feature name='camel-wasm' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.dylibso.chicory/runtime/${chicocy-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.dylibso.chicory/wasm/${chicocy-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-wasm/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-wasm/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-weather' version='${project.version}' start-level='50'>
+    <feature name='camel-weather' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version='[5,6)'>http-client</feature>
-        <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpclient-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-weather/${project.version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpclient-version}$Bundle-SymbolicName=org.apache.httpcore5.h2&amp;Bundle-Version=${httpclient-version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-weather/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-web3j' version='${project.version}' start-level='50'>
+    <feature name='camel-web3j' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.web3j/core/${web3j-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.web3j/geth/${web3j-version}</bundle>
@@ -3010,51 +3053,51 @@
         <bundle dependency='true'>wrap:mvn:org.web3j/quorum/${web3j-quorum-version}</bundle>
         <bundle dependency='true'>mvn:io.reactivex.rxjava2/rxjava/${rxjava2-version}</bundle>
         <bundle dependency='true'>mvn:org.reactivestreams/reactive-streams/${reactive-streams-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-web3j/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-web3j/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-webhook' version='${project.version}' start-level='50'>
+    <feature name='camel-webhook' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-webhook/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-webhook/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-whatsapp' version='${project.version}' start-level='50'>
+    <feature name='camel-whatsapp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-webhook</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-whatsapp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-whatsapp/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-wordpress' version='${project.version}' start-level='50'>
+    <feature name='camel-wordpress' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cxf</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-wordpress/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-wordpress/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-workday' version='${project.version}' start-level='50'>
+    <feature name='camel-workday' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[5,6)'>http-client</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-workday/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-workday/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-xchange' version='${project.version}' start-level='50'>
+    <feature name='camel-xchange' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:org.knowm.xchange/xchange-core/${xchange-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.knowm.xchange/xchange-binance/${xchange-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.github.mmazi/rescu/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xchange/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xchange/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-xj' version='${project.version}' start-level='50'>
+    <feature name='camel-xj' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-xslt-saxon</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-xj/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xj/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-xmlsecurity' version='${project.version}' start-level='50'>
+    <feature name='camel-xmlsecurity' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.santuario/xmlsec/${xmlsec-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xmlsecurity/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xmlsecurity/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-xmpp' version='${project.version}' start-level='50'>
+    <feature name='camel-xmpp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.igniterealtime.smack/smack-core/${smack-version}</bundle>
         <bundle dependency='true'>mvn:org.igniterealtime.smack/smack-extensions/${smack-version}</bundle>
@@ -3065,29 +3108,29 @@
         <bundle dependency='true'>mvn:org.jxmpp/jxmpp-util-cache/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.minidns/minidns-core/${minidns-version}</bundle>
         <bundle dependency='true'>wrap:mvn:xpp3/xpp3/${xpp3-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xmpp/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xmpp/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-xslt-saxon' version='${project.version}' start-level='50'>
+    <feature name='camel-xslt-saxon' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:net.sf.saxon/Saxon-HE/${saxon-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.xmlresolver/xmlresolver/${auto-detect-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-xslt-saxon/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-xslt-saxon/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-yaml-dsl' version='${project.version}' start-level='50'>
+    <feature name='camel-yaml-dsl' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.snakeyaml/snakeyaml-engine/${snakeyaml-engine-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-yaml-dsl/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-yaml-dsl/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-zeebe' version='${project.version}' start-level='50'>
+    <feature name='camel-zeebe' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.camunda/zeebe-client-java/${zeebe-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.camunda/zeebe-gateway-protocol-impl/${zeebe-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-api/${grpc-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-zeebe/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-zeebe/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-zendesk' version='${project.version}' start-level='50'>
+    <feature name='camel-zendesk' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>mvn:org.asynchttpclient/async-http-client/${auto-detect-version}</bundle>
@@ -3098,39 +3141,41 @@
         <bundle dependency='true'>mvn:io.netty/netty-codec-socks/${netty-version}</bundle>
         <bundle dependency='true'>mvn:com.typesafe.netty/netty-reactive-streams/${netty-reactive-streams-version}</bundle>
         <bundle dependency='true'>mvn:org.reactivestreams/reactive-streams/${reactive-streams-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-zendesk/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-zendesk/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-zip-deflater' version='${project.version}' start-level='50'>
+    <feature name='camel-zip-deflater' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-zip-deflater/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-zip-deflater/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-zipfile' version='${project.version}' start-level='50'>
+    <feature name='camel-zipfile' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-zipfile/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-zipfile/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-zookeeper' version='${project.version}' start-level='50'>
+    <feature name='camel-zookeeper' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[32,33)">guava</feature>
-        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Export-Package=org.apache.zookeeper*;version=${zookeeper-version}</bundle>
-        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper-jute/${zookeeper-version}$Export-Package=org.apache.*;version=${zookeeper-version}</bundle>
+        <feature version="[3,4)">zookeeper-core</feature>
+        <!-- <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Export-Package=org.apache.zookeeper*;version=${zookeeper-version}</bundle> -->
+        <!-- <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper-jute/${zookeeper-version}$Export-Package=org.apache.*;version=${zookeeper-version}</bundle> -->
         <bundle dependency='true'>mvn:org.apache.curator/curator-client/${curator-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.curator/curator-framework/${curator-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.curator/curator-recipes/${curator-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.curator/curator-x-discovery/${curator-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-zookeeper/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-zookeeper/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-zookeeper-master' version='${project.version}' start-level='50'>
+    <feature name='camel-zookeeper-master' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
         <feature version="[32,33)">guava</feature>
-        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Export-Package=org.apache.zookeeper*;version=${zookeeper-version}</bundle>
-        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper-jute/${zookeeper-version}$Export-Package=org.apache.*;version=${zookeeper-version}</bundle>
+        <feature version="[3,4)">zookeeper-core</feature>
+        <!-- <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Export-Package=org.apache.zookeeper*;version=${zookeeper-version}</bundle> -->
+        <!-- <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper-jute/${zookeeper-version}$Export-Package=org.apache.*;version=${zookeeper-version}</bundle> -->
         <bundle dependency='true'>mvn:org.apache.curator/curator-client/${curator-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.curator/curator-framework/${curator-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.curator/curator-recipes/${curator-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-zookeeper-master/${project.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-zookeeper-master/${upstream.version}</bundle>
     </feature>
 </features>
diff --git a/pom.xml b/pom.xml
index 580044574..041346d2b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -74,11 +74,11 @@
     </modules>
 
     <scm>
-        <connection>scm:git:https://github.com/apache/camel-karaf</connection>
-        <developerConnection>scm:git:https://github.com/apache/camel-karaf</developerConnection>
-        <url>scm:git:https://github.com/apache/camel-karaf</url>
-      <tag>camel-karaf-4.8.1</tag>
-  </scm>
+        <connection>scm:git:http://github.com/Talend/camel-karaf.git</connection>
+        <developerConnection>scm:git:https://github.com/Talend/camel-karaf.git</developerConnection>
+        <url>https://github.com/Talend/camel-karaf</url>
+        <tag>HEAD</tag>
+    </scm>
 
     <issueManagement>
         <system>github</system>
@@ -87,6 +87,29 @@
 
     <!-- TODO use Karaf/Camel bom -->
     <properties>
+        <upstream.version>4.8.1</upstream.version>
+        <camel-features.tesb.version>4.8.1.20240820</camel-features.tesb.version>
+        <camel-support.tesb.version>4.8.1.20240820</camel-support.tesb.version>
+        <camel-cxf-all.tesb.version>4.8.1.20240820</camel-cxf-all.tesb.version>
+        <camel-cxf-soap.tesb.version>4.8.1.20240820</camel-cxf-soap.tesb.version>
+        <camel-cxf-rest.tesb.version>4.8.1.20240820</camel-cxf-rest.tesb.version>
+        <camel-spring.tesb.version>4.8.1.20240820</camel-spring.tesb.version>
+
+        <jetty11.tesb.version>11.0.21</jetty11.tesb.version>
+        <jetty12.tesb.version>12.0.10</jetty12.tesb.version>
+        <jetty.tesb.version>${jetty12.tesb.version}</jetty.tesb.version>
+        <jetty11.tesb.version-range>[11,12)</jetty11.tesb.version-range>
+        <jetty12.tesb.version-range>[12,13)</jetty12.tesb.version-range>
+        <jetty.tesb.version-range>${jetty12.tesb.version-range}</jetty.tesb.version-range>
+        <jaxb3-istack.tesb.version>4.0.1</jaxb3-istack.tesb.version>
+        <jaxb3-fastinfoset.tesb.version>2.0.0</jaxb3-fastinfoset.tesb.version>
+        <jaxb3-staxex.tesb.version>2.0.1</jaxb3-staxex.tesb.version>
+        <jaxb3-dtd-parser.tesb.version>1.4.5</jaxb3-dtd-parser.tesb.version>
+        <jaxb-istack.tesb.version>4.1.2</jaxb-istack.tesb.version>
+        <jaxb-fastinfoset.tesb.version>2.1.1</jaxb-fastinfoset.tesb.version>
+        <jaxb-staxex.tesb.version>2.1.0</jaxb-staxex.tesb.version>
+        <jaxb-dtd-parser.tesb.version>1.5.1</jaxb-dtd-parser.tesb.version>
+
         <jdk-version>17</jdk-version>
         <maven.compiler.source>${jdk-version}</maven.compiler.source>
         <maven.compiler.target>${jdk-version}</maven.compiler.target>
@@ -665,6 +688,49 @@
     <build>
         <pluginManagement>
             <plugins>
+                <plugin>
+                    <groupId>io.paradoxical</groupId>
+                    <artifactId>resolved-pom-maven-plugin</artifactId>
+                    <version>1.0</version>
+                    <configuration>
+                        <properties>
+                            <revision>${revision}</revision>
+                            <upstream.version>${upstream.version}</upstream.version>
+                            <camel.features.tesb.version>${camel.features.tesb.version}</camel.features.tesb.version>
+                            <camel-support.tesb.version>${camel-support.tesb.version}</camel-support.tesb.version>
+                            <camel-cxf-all.tesb.version>${camel-cxf-all.tesb.version}</camel-cxf-all.tesb.version>
+                            <camel-cxf-soap.tesb.version>${camel-cxf-soap.tesb.version}</camel-cxf-soap.tesb.version>
+                            <camel-cxf-rest.tesb.version>${camel-cxf-rest.tesb.version}</camel-cxf-rest.tesb.version>
+                            <camel-spring.tesb.version>${camel-spring.tesb.version}</camel-spring.tesb.version>
+                            <jetty11.tesb.version>${jetty11.tesb.version}</jetty11.tesb.version>
+                            <jetty12.tesb.version>${jetty12.tesb.version}</jetty12.tesb.version>
+                            <jetty.tesb.version>${jetty.tesb.version}</jetty.tesb.version>
+                            <jetty11.tesb.version-range>${jetty11.tesb.version-range}</jetty11.tesb.version-range>
+                            <jetty12.tesb.version-range>${jetty12.tesb.version-range}</jetty12.tesb.version-range>
+                            <jetty.tesb.version-range>${jetty.tesb.version-range}</jetty.tesb.version-range>
+                            <jaxb3-istack.tesb.version>${jaxb3-istack.tesb.version}</jaxb3-istack.tesb.version>
+                            <jaxb3-fastinfoset.tesb.version>${jaxb3-fastinfoset.tesb.version}</jaxb3-fastinfoset.tesb.version>
+                            <jaxb3-staxex.tesb.version>${jaxb3-staxex.tesb.version}</jaxb3-staxex.tesb.version>
+                            <jaxb3-dtd-parser.tesb.version>${jaxb3-dtd-parser.tesb.version}</jaxb3-dtd-parser.tesb.version>
+                            <jaxb-istack.tesb.version>${jaxb-istack.tesb.version}</jaxb-istack.tesb.version>
+                            <jaxb-fastinfoset.tesb.version>${jaxb-fastinfoset.tesb.version}</jaxb-fastinfoset.tesb.version>
+                            <jaxb-staxex.tesb.version>${jaxb-staxex.tesb.version}</jaxb-staxex.tesb.version>
+                            <jaxb-dtd-parser.tesb.version>${jaxb-dtd-parser.tesb.version}</jaxb-dtd-parser.tesb.version>
+                        </properties>
+                    </configuration>
+                    <executions>
+                        <execution>
+                            <id>resolve-my-pom</id>
+                            <phase>initialize</phase>
+                            <goals>
+                                <goal>resolve-pom</goal>
+                            </goals>
+                            <configuration>
+                                <resolvedPomFile>.resolved-pom.xml</resolvedPomFile>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-shade-plugin</artifactId>
@@ -704,6 +770,10 @@
         </pluginManagement>
 
         <plugins>
+            <plugin>
+                <groupId>io.paradoxical</groupId>
+                <artifactId>resolved-pom-maven-plugin</artifactId>
+            </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
diff --git a/tests/camel-integration-test/pom.xml b/tests/camel-integration-test/pom.xml
index 161781d69..151b21676 100644
--- a/tests/camel-integration-test/pom.xml
+++ b/tests/camel-integration-test/pom.xml
@@ -69,7 +69,7 @@
                 <configuration>
                     <instructions>
                         <Export-Package>
-                            org.apache.karaf.camel.itests;version=${project.version},
+                            org.apache.karaf.camel.itests;version=${upstream.version},
                         </Export-Package>
                         <Import-Package>
                             org.apache.karaf.itests,
@@ -139,7 +139,7 @@
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-osgi</artifactId>
             <scope>provided</scope>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.camel</groupId>
@@ -156,31 +156,31 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-model</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-engine</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-base-engine</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-mock</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-blueprint</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
diff --git a/tests/camel-test-scr/pom.xml b/tests/camel-test-scr/pom.xml
index 54f2e5006..190bcf388 100644
--- a/tests/camel-test-scr/pom.xml
+++ b/tests/camel-test-scr/pom.xml
@@ -37,17 +37,17 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-osgi</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-model</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-api</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.camel</groupId>
diff --git a/tests/examples/pom.xml b/tests/examples/pom.xml
index 0e3cf0053..e6216e86a 100644
--- a/tests/examples/pom.xml
+++ b/tests/examples/pom.xml
@@ -60,13 +60,13 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-integration-test</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>compile</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-osgi</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -85,7 +85,7 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-api</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -182,7 +182,7 @@
                 <configuration>
                     <instructions>
                         <Export-Package>
-                            org.apache.karaf.camel.examples.test;version=${project.version}
+                            org.apache.karaf.camel.examples.test;version=${upstream.version}
                         </Export-Package>
                         <Import-Package>
                             org.apache.camel*;${camel-osgi-import-camel-version},
@@ -199,7 +199,7 @@
                         </goals>
                         <configuration>
                             <versions>
-                                <karaf.osgi.version>${project.version}</karaf.osgi.version>
+                                <karaf.osgi.version>${upstream.version}</karaf.osgi.version>
                             </versions>
                         </configuration>
                     </execution>
@@ -230,7 +230,7 @@
                                 <include>**/*Test.java</include>
                             </includes>
                             <systemPropertyVariables>
-                                <project.version>${project.version}</project.version>
+                                <project.version>${upstream.version}</project.version>
                                 <project.target>${project.build.directory}</project.target>
                                 <org.ops4j.pax.logging.DefaultServiceLog.level>WARN</org.ops4j.pax.logging.DefaultServiceLog.level>
                             </systemPropertyVariables>
diff --git a/tests/features/camel-cometd/pom.xml b/tests/features/camel-cometd/pom.xml
index ddeff9dcc..0c9a9a0ec 100644
--- a/tests/features/camel-cometd/pom.xml
+++ b/tests/features/camel-cometd/pom.xml
@@ -38,7 +38,7 @@
                 <configuration>
                     <instructions>
                         <Export-Package>
-                            org.apache.karaf.camel.test;version=${project.version}
+                            org.apache.karaf.camel.test;version=${upstream.version}
                         </Export-Package>
                         <Import-Package>
                             !org.apache.karaf.camel.test,
@@ -61,7 +61,7 @@
                         </goals>
                         <configuration>
                             <versions>
-                                <karaf.osgi.version>${project.version}</karaf.osgi.version>
+                                <karaf.osgi.version>${upstream.version}</karaf.osgi.version>
                             </versions>
                         </configuration>
                     </execution>
diff --git a/tests/features/camel-cxf/pom.xml b/tests/features/camel-cxf/pom.xml
index fb6bcb3cc..d0aec9035 100644
--- a/tests/features/camel-cxf/pom.xml
+++ b/tests/features/camel-cxf/pom.xml
@@ -75,8 +75,8 @@
                                 <include>**/*Test.java</include>
                             </includes>
                             <systemPropertyVariables>
-                                <camel.karaf.version>${project.version}</camel.karaf.version>
-                                <project.version>${project.version}</project.version>
+                                <camel.karaf.version>${upstream.version}</camel.karaf.version>
+                                <project.version>${upstream.version}</project.version>
                                 <project.target>${project.build.directory}</project.target>
                                 <users.file.location>${users.file.location}</users.file.location>
                                 <org.ops4j.pax.logging.DefaultServiceLog.level>WARN</org.ops4j.pax.logging.DefaultServiceLog.level>
diff --git a/tests/features/pom.xml b/tests/features/pom.xml
index b10339a3f..1ef8ff474 100644
--- a/tests/features/pom.xml
+++ b/tests/features/pom.xml
@@ -130,13 +130,13 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-integration-test</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>compile</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-core-osgi</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -155,7 +155,7 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-api</artifactId>
-            <version>${project.version}</version>
+            <version>${upstream.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -252,7 +252,7 @@
                 <configuration>
                     <instructions>
                         <Export-Package>
-                            org.apache.karaf.camel.test*;version=${project.version}
+                            org.apache.karaf.camel.test*;version=${upstream.version}
                         </Export-Package>
                         <Import-Package>
                             org.apache.camel*;${camel-osgi-import-camel-version},
@@ -269,7 +269,7 @@
                         </goals>
                         <configuration>
                             <versions>
-                                <karaf.osgi.version>${project.version}</karaf.osgi.version>
+                                <karaf.osgi.version>${upstream.version}</karaf.osgi.version>
                             </versions>
                         </configuration>
                     </execution>
@@ -302,8 +302,8 @@
                             <systemPropertyVariables>
                                 <camel.karaf.itest.dump.logs>${dump.logs.on.failure}</camel.karaf.itest.dump.logs>
                                 <camel.karaf.itest.keep.docker.images>${keep.docker.images.on.exit}</camel.karaf.itest.keep.docker.images>
-                                <camel.karaf.version>${project.version}</camel.karaf.version>
-                                <project.version>${project.version}</project.version>
+                                <camel.karaf.version>${upstream.version}</camel.karaf.version>
+                                <project.version>${upstream.version}</project.version>
                                 <project.target>${project.build.directory}</project.target>
                                 <users.file.location>${users.file.location}</users.file.location>
                                 <org.ops4j.pax.logging.DefaultServiceLog.level>WARN</org.ops4j.pax.logging.DefaultServiceLog.level>


(camel-karaf) 02/12: DPE-107 Updates and adaptations for TESB.. (#75)

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit 4deafbd1fc0a5c04d7db1b057a666d2dcc4432f8
Author: Andreas Mattes <am...@talend.com>
AuthorDate: Tue Dec 17 16:24:02 2024 +0100

    DPE-107 Updates and adaptations for TESB.. (#75)
    
    * DPE-107 Zookeeper update to 3.9.3.
    
    * DPE-445 Build camel-cxf based on CXF 4.1.0 snapshot.
    
    * DPE-107 Add modules to be built.
    
    * DPE-107 Build fix.
    
    * fix(DPE-107): fix usage of routebuilder
    
    * fix(DPE-107): update spring version,
    remove the HTTPTransportActivator.java, moved back to cxf
    
    * fix(DPE-107): use osgi 8.0.0 and pax web http service
    
    * Ref #548: Allow to create a cxfrs endpoint in blueprint
    
    * fix(DPE-107) : use Extension to initialize factory instead of constructor so that it is registered
    
    * fix(DPE-107) : add camel-blueprint to build
    
    * fix(DPE-107) : fix export version of cxf
    
    * fix(DPE-107) : revert bad change of features
    
    * fix(DPE-107) : add pax-web-api dependency to camel-cxf
    
    * Ref #559: add missing cxf jars
    
    * fix(DPE-529) : correction of imports in camel-cxf-all
    
    * fix(DPE-107) : servlet registration of data services
    
    * fix(DPE-107) : move to cxf 4.1.0
    
    * fix(DPE-107) : fix camel-bonita
    
    * fix(DPE-107) : fix camel-servicenow
    
    ---------
    
    Co-authored-by: Francois de Parscau <fr...@qlik.com>
    Co-authored-by: Nicolas Filotto <ni...@qlik.com>
---
 Jenkinsfile.talend                                 |    2 +-
 components/camel-blueprint/pom.xml                 |    2 +
 .../BlueprintContainerBeanRepository.java          |    4 +-
 .../blueprint/handler/CamelNamespaceHandler.java   |   23 +-
 components/camel-cxf/camel-cxf-all/pom.xml         |  157 ++-
 .../camel/component/cxf/bus/osgi/CXFActivator.java |   23 +-
 .../component/cxf/ext/logging/osgi/Activator.java  |    4 +-
 .../cxf/jaxrs/client/blueprint/Activator.java      |   51 -
 .../camel/component/cxf/osgi/MainActivator.java    |   11 +-
 .../http/osgi/HTTPTransportActivator.java          |   34 +-
 .../http/osgi/HttpServiceTrackerCust.java          |    2 +-
 .../cxf/transport/http/osgi/ServletExporter.java   |    7 +-
 .../cxf/ws/policy/blueprint/Activator.java         |   53 -
 components/camel-cxf/camel-cxf-blueprint/pom.xml   |   43 +-
 .../component/cxf/blueprint}/MainActivator.java    |   23 +-
 .../cxf/blueprint/binding/soap}/Activator.java     |   27 +-
 .../binding/soap}/SoapBindingBPHandler.java        |   10 +-
 .../SoapBindingBPInfoConfigDefinitionParser.java   |    4 +-
 .../binding/soap}/SoapVersionTypeConverter.java    |    2 +-
 .../cxf/blueprint/bus}/BlueprintBeanLocator.java   |    2 +-
 .../component/cxf/blueprint/bus}/BlueprintBus.java |    2 +-
 .../bus}/BlueprintNameSpaceHandlerFactory.java     |    2 +-
 .../bus}/BundleDelegatingClassLoader.java          |    2 +-
 .../cxf/blueprint/bus}/BusDefinitionParser.java    |    4 +-
 .../component/cxf/blueprint/bus/CXFActivator.java  |   67 ++
 .../cxf/blueprint/bus}/ConfigurerImpl.java         |    2 +-
 .../cxf/blueprint/bus}/Messages.properties         |    0
 .../blueprint/bus}/NamespaceHandlerRegisterer.java |    2 +-
 .../AbstractBPBeanDefinitionParser.java            |   13 +-
 .../configuration}/InterceptorTypeConverter.java   |    2 +-
 .../SimpleBPBeanDefinitionParser.java              |    3 +-
 .../cxf/blueprint/frontend}/Activator.java         |   28 +-
 .../ClientProxyFactoryBeanDefinitionParser.java    |    5 +-
 .../ServerFactoryBeanDefinitionParser.java         |    4 +-
 .../frontend}/SimpleBPNamespaceHandler.java        |   10 +-
 .../helpers/AbstractBeanDefinitionParser.java      |    2 +-
 .../blueprint}/helpers/BaseNamespaceHandler.java   |    2 +-
 .../blueprint}/helpers/CXFAPINamespaceHandler.java |   15 +-
 .../cxf/blueprint/helpers/CxfNamespaceHandler.java |    7 +-
 .../component/cxf/blueprint/jaxrs}/Activator.java  |   26 +-
 .../blueprint/jaxrs}/BlueprintResourceFactory.java |    3 +-
 .../blueprint/jaxrs/CxfRsBlueprintEndpoint.java    |    2 +-
 .../blueprint/jaxrs}/JAXRSBPNamespaceHandler.java  |   10 +-
 .../JAXRSServerFactoryBeanDefinitionParser.java    |   12 +-
 .../cxf/blueprint/jaxrs/client}/Activator.java     |   31 +-
 .../jaxrs/client}/JAXRSBPNamespaceHandler.java     |   12 +-
 .../JAXRSClientFactoryBeanDefinitionParser.java    |    7 +-
 .../component/cxf/blueprint/jaxws}/Activator.java  |   26 +-
 .../blueprint/jaxws}/EndpointDefinitionParser.java |    4 +-
 .../blueprint/jaxws}/JAXWSBPNamespaceHandler.java  |   15 +-
 .../blueprint/servlet}/CXFBlueprintServlet.java    |    4 +-
 .../transport/http/HTTPTransportActivator.java}    |   31 +-
 .../blueprint/transport/http}/HttpBPHandler.java   |   10 +-
 .../http}/HttpConduitBPBeanDefinitionParser.java   |    4 +-
 .../HttpDestinationBPBeanDefinitionParser.java     |    4 +-
 .../cxf/blueprint/ws/addressing}/Activator.java    |   26 +-
 .../cxf/blueprint/ws/addressing}/WsBPHandler.java  |   10 +-
 .../cxf/blueprint/ws/policy}/Activator.java        |   31 +-
 ...ternalAttachmentProviderBPDefinitionParser.java |    4 +-
 .../ws/policy}/PolicyBPDefinitionParser.java       |    9 +-
 .../cxf/blueprint/ws/policy}/PolicyBPHandler.java  |   10 +-
 .../ws/policy}/PolicyEngineBPDefinitionParser.java |    6 +-
 .../policy}/PolicyFeatureBPDefinitionParser.java   |    4 +-
 .../CxfRsBlueprintEndpointFactoryBean.java}        |   17 +-
 .../src/main/resources/META-INF/blueprint.handlers |    2 +-
 .../{schema => schemas}/blueprint/camel-cxf.xsd    |    0
 .../main/resources/schemas/blueprint/cxf-core.xsd} |    9 +-
 .../resources/schemas/blueprint/jaxrs-client.xsd   |   70 ++
 .../resources/schemas/blueprint/jaxrs-common.xsd   |   85 ++
 .../src/main/resources/schemas/blueprint/jaxrs.xsd |   79 ++
 .../src/main/resources/schemas/blueprint/jaxws.xsd |  441 +++++++
 .../main/resources/schemas/blueprint/simple.xsd    |  288 +++++
 .../schemas/configuration/blueprint/soap.xsd       |    4 +-
 .../resources/schemas/configuration/cxf-beans.xsd  |   85 ++
 .../resources/schemas/configuration/http-conf.xsd  |  160 +++
 .../schemas/configuration/parameterized-types.xsd  |   79 ++
 .../resources/schemas/configuration/security.xjb   |   27 +
 .../resources/schemas/configuration/security.xsd   |  668 +++++++++++
 .../oasis-200401-wss-wssecurity-secext-1.0.xsd     |  195 ++++
 .../oasis-200401-wss-wssecurity-utility-1.0.xsd    |  108 ++
 .../src/main/resources/schemas/policy.xsd          |  132 +++
 .../src/main/resources/schemas/ws-addr-conf.xsd    |   37 +
 .../main/resources/schemas/ws-policy-200409.xjb    |   29 +
 .../main/resources/schemas/ws-policy-200409.xsd    |  118 ++
 .../main/resources/schemas/ws-policy-200607.xjb    |   29 +
 .../main/resources/schemas/ws-policy-200607.xsd    |  120 ++
 .../main/resources/schemas/ws-policy-200702.xjb    |   29 +
 .../main/resources/schemas/ws-policy-200702.xsd    |  137 +++
 .../resources/schemas/ws-securitypolicy-1.2.xsd    | 1205 ++++++++++++++++++++
 .../src/main/resources/schemas/wsdl/addressing.xjb |   30 +
 .../src/main/resources/schemas/wsdl/addressing.xsd |  133 +++
 .../src/main/resources/schemas/wsdl/http-conf.xjb  |   32 +
 .../src/main/resources/schemas/wsdl/http-conf.xsd  |  420 +++++++
 .../src/main/resources/schemas/wsdl/ws-addr.xsd    |  146 +++
 .../src/main/resources/schemas/wsdl/wsdl.xjb       |   34 +
 .../src/main/resources/schemas/wsdl/wsdl.xsd       |  322 ++++++
 .../main/resources/schemas/xmldsig-core-schema.xsd |  305 +++++
 components/camel-cxf/camel-cxf-spring-all/pom.xml  |   12 +-
 .../camel-cxf-transport-blueprint/pom.xml          |   10 +-
 .../blueprint/AbstractBeanDefinitionParser.java    |    3 +-
 .../blueprint/CamelTransportNameSpaceHandler.java  |    8 +-
 features/src/main/feature/camel-features.xml       |   41 +-
 pom.xml                                            |   44 +-
 tests/features/camel-cometd/pom.xml                |   55 +-
 tests/features/camel-cxf/pom.xml                   |    5 +
 .../karaf/camel/test/CamelCxfRsRouteSupplier.java  |    6 +
 .../main/resources/OSGI-INF/blueprint/route.xml    |   31 +-
 .../apache/karaf/camel/itest/CamelCxfITest.java    |   40 +-
 tests/features/pom.xml                             |    5 +
 109 files changed, 6186 insertions(+), 606 deletions(-)

diff --git a/Jenkinsfile.talend b/Jenkinsfile.talend
index 5a5a84f01..1c4e3a7f3 100644
--- a/Jenkinsfile.talend
+++ b/Jenkinsfile.talend
@@ -1,5 +1,5 @@
 @Library('esb') _
  
 Fork(
-        MVN_MODULES: 'org.apache.camel.karaf:camel-support,org.apache.camel.karaf:camel-cxf-all,org.apache.camel.karaf:camel-spring,org.apache.camel.karaf:apache-camel'
+        MVN_MODULES: 'org.apache.camel.karaf:camel-support,org.apache.camel.karaf:camel-blueprint,org.apache.camel.karaf:camel-cxf-all,org.apache.camel.karaf:camel-cxf-blueprint,org.apache.camel.karaf:camel-cxf-spring-all,org.apache.camel.karaf:camel-cxf-transport-blueprint,org.apache.camel.karaf:camel-spring,org.apache.camel.karaf:apache-camel'
 )
diff --git a/components/camel-blueprint/pom.xml b/components/camel-blueprint/pom.xml
index f0bba730b..0854350a7 100644
--- a/components/camel-blueprint/pom.xml
+++ b/components/camel-blueprint/pom.xml
@@ -31,7 +31,9 @@
     <artifactId>camel-blueprint</artifactId>
     <packaging>bundle</packaging>
     <name>Apache Camel :: Karaf :: Components :: Blueprint</name>
+    <version>${revision}</version>
     <properties>
+    <revision>${camel-blueprint.tesb.version}</revision>
         <firstVersion>2.4.0</firstVersion>
         <label>java,osgi</label>
         <camel.osgi.export>
diff --git a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintContainerBeanRepository.java b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintContainerBeanRepository.java
index e68b503c6..0e50c1646 100644
--- a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintContainerBeanRepository.java
+++ b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintContainerBeanRepository.java
@@ -61,13 +61,13 @@ public class BlueprintContainerBeanRepository implements BeanRepository {
         }
 
         // just to be safe
-        if (answer == null) {
+        if (!type.isInstance(answer)) {
             return null;
         }
 
         try {
             return type.cast(answer);
-        } catch (Throwable e) {
+        } catch (Exception e) {
             String msg = "Found bean: " + name + " in BlueprintContainer: " + blueprintContainer
                     + " of type: " + answer.getClass().getName() + " expected type was: " + type;
             throw new NoSuchBeanException(name, msg, e);
diff --git a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/handler/CamelNamespaceHandler.java b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/handler/CamelNamespaceHandler.java
index 0fbd2e1da..05001fd15 100644
--- a/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/handler/CamelNamespaceHandler.java
+++ b/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/handler/CamelNamespaceHandler.java
@@ -19,7 +19,6 @@ package org.apache.camel.blueprint.handler;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
-import java.lang.reflect.Type;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.net.URL;
@@ -34,15 +33,6 @@ import jakarta.xml.bind.Binder;
 import jakarta.xml.bind.JAXBContext;
 import jakarta.xml.bind.JAXBException;
 
-import org.apache.camel.RuntimeCamelException;
-import org.apache.camel.blueprint.CamelRouteConfigurationContextFactoryBean;
-import org.apache.camel.builder.LegacyDeadLetterChannelBuilder;
-import org.apache.camel.builder.LegacyDefaultErrorHandlerBuilder;
-import org.apache.camel.builder.LegacyNoErrorHandlerBuilder;
-import org.apache.camel.reifier.errorhandler.ErrorHandlerReifier;
-import org.apache.camel.reifier.errorhandler.LegacyDeadLetterChannelReifier;
-import org.apache.camel.reifier.errorhandler.LegacyDefaultErrorHandlerReifier;
-import org.apache.camel.reifier.errorhandler.LegacyNoErrorHandlerReifier;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.NamedNodeMap;
@@ -71,8 +61,12 @@ import org.apache.camel.blueprint.BlueprintModelJAXBContextFactory;
 import org.apache.camel.blueprint.CamelContextFactoryBean;
 import org.apache.camel.blueprint.CamelEndpointFactoryBean;
 import org.apache.camel.blueprint.CamelRestContextFactoryBean;
+import org.apache.camel.blueprint.CamelRouteConfigurationContextFactoryBean;
 import org.apache.camel.blueprint.CamelRouteContextFactoryBean;
 import org.apache.camel.blueprint.CamelRouteTemplateContextFactoryBean;
+import org.apache.camel.builder.LegacyDeadLetterChannelBuilder;
+import org.apache.camel.builder.LegacyDefaultErrorHandlerBuilder;
+import org.apache.camel.builder.LegacyNoErrorHandlerBuilder;
 import org.apache.camel.core.xml.AbstractCamelFactoryBean;
 import org.apache.camel.impl.engine.CamelPostProcessorHelper;
 import org.apache.camel.impl.engine.DefaultCamelContextNameStrategy;
@@ -91,13 +85,15 @@ import org.apache.camel.model.RouteDefinition;
 import org.apache.camel.model.SendDefinition;
 import org.apache.camel.model.SortDefinition;
 import org.apache.camel.model.ToDefinition;
-import org.apache.camel.model.ToDynamicDefinition;
 import org.apache.camel.model.UnmarshalDefinition;
-import org.apache.camel.model.WireTapDefinition;
 import org.apache.camel.model.language.ExpressionDefinition;
 import org.apache.camel.model.rest.RestBindingMode;
 import org.apache.camel.model.rest.RestDefinition;
 import org.apache.camel.model.rest.VerbDefinition;
+import org.apache.camel.reifier.errorhandler.ErrorHandlerReifier;
+import org.apache.camel.reifier.errorhandler.LegacyDeadLetterChannelReifier;
+import org.apache.camel.reifier.errorhandler.LegacyDefaultErrorHandlerReifier;
+import org.apache.camel.reifier.errorhandler.LegacyNoErrorHandlerReifier;
 import org.apache.camel.spi.CamelContextNameStrategy;
 import org.apache.camel.spi.ComponentResolver;
 import org.apache.camel.spi.DataFormatResolver;
@@ -125,7 +121,6 @@ import org.osgi.service.blueprint.reflect.RefMetadata;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-
 import static org.osgi.service.blueprint.reflect.ComponentMetadata.ACTIVATION_LAZY;
 import static org.osgi.service.blueprint.reflect.ServiceReferenceMetadata.AVAILABILITY_MANDATORY;
 import static org.osgi.service.blueprint.reflect.ServiceReferenceMetadata.AVAILABILITY_OPTIONAL;
@@ -209,7 +204,7 @@ public class CamelNamespaceHandler implements NamespaceHandler {
     @Override
     @SuppressWarnings({"rawtypes"})
     public Set<Class> getManagedClasses() {
-        return new HashSet<>(Arrays.asList(BlueprintCamelContext.class));
+        return Set.of(BlueprintCamelContext.class);
     }
 
     @Override
diff --git a/components/camel-cxf/camel-cxf-all/pom.xml b/components/camel-cxf/camel-cxf-all/pom.xml
index 9081f1bcb..261b87183 100644
--- a/components/camel-cxf/camel-cxf-all/pom.xml
+++ b/components/camel-cxf/camel-cxf-all/pom.xml
@@ -36,35 +36,8 @@
     <properties>
         <revision>${camel-cxf-all.tesb.version}</revision>
         <camel.osgi.export>
-            org.apache.camel.component.cxf.osgi;version=${upstream.version},
-            org.apache.camel.component.cxf.common;version=${camel-version},
-            org.apache.camel.component.cxf.common.header;version=${camel-version},
-            org.apache.camel.component.cxf.common.message;version=${camel-version},
-            org.apache.camel.component.cxf.converter;version=${camel-version},
-            org.apache.camel.component.cxf.util;version=${camel-version},
-            org.apache.camel.component.cxf.bus.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.bus.osgi;version=${upstream.version},
-            org.apache.camel.component.cxf.configuration.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.helpers;version=${upstream.version},
-            org.apache.camel.component.cxf.jaxrs;version="${camel-version}",
-            org.apache.camel.component.cxf.ext.logging.osgi;version=${upstream.version},
-            org.apache.camel.component.cxf.jaxrs.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.jaxws.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.frontend.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.jaxrs.client.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.transport.http.osgi;version=${upstream.version},
-            org.apache.camel.component.cxf.transport.http.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.servlet.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.ws.addressing.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.ws.policy.blueprint;version=${upstream.version},
-            org.apache.camel.component.cxf.feature;version=${camel-version},
-            org.apache.camel.component.cxf.interceptors;version=${camel-version},
-            org.apache.camel.component.cxf.jaxws;version=${camel-version},
-            org.apache.camel.component.cxf.transport;version=${camel-version},
-            org.apache.camel.component.cxf.transport.header;version=${camel-version},
-            org.apache.camel.component.cxf.transport.message;version=${camel-version},
-            org.apache.camel.component.cxf.binding.soap.blueprint;version=${upstream.version},
-            org.apache.cxf*;version=${cxf-version},
+            org.apache.camel.component.cxf*;version=${camel-version},
+            org.apache.cxf*;version=${cxf.tesb.version},
         </camel.osgi.export>
         <camel.osgi.activator>org.apache.camel.component.cxf.osgi.MainActivator</camel.osgi.activator>
         <camel-osgi-camel-import>
@@ -76,6 +49,8 @@
             com.sun.xml.internal.messaging.saaj.soap;resolution:=optional,
             com.ctc.wstx*;resolution:=optional,
             org.codehaus.stax2*;resolution:=optional,
+            org.codehaus.jettison.mapped*;resolution:=optional,
+            org.dom4j*;resolution:=optional,
             com.sun.msv*;resolution:=optional,
             com.sun.tools*;resolution:=optional,
             com.sun.xml*;resolution:=optional,
@@ -106,7 +81,7 @@
             org.osgi.util*,
             org.osgi.service*,
             org.osgi.framework*,
-            org.apache.aries.blueprint*,
+            org.ops4j.pax.web.service.http.*,
             org.xml.sax,
             javax.xml*,
             javax.management*,
@@ -122,35 +97,13 @@
         <camel.osgi.dynamicimport.pkg>
             org.apache.cxf.bus,org.apache.cxf.*,com.ctc.wstx.*
         </camel.osgi.dynamicimport.pkg>
-        <camel.osgi.export.service>
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/core",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/configuration/beans",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/configuration/parameterized-types",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/configuration/security",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://schemas.xmlsoap.org/wsdl/",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/bindings/soap",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/jaxrs",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/jaxws",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/simple",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/jaxrs-client",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/transports/http/configuration",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/ws/addressing",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/policy",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://www.w3.org/ns/ws-policy",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://www.w3.org/2006/07/ws-policy",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://schemas.xmlsoap.org/ws/2004/09/policy",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://www.w3.org/2000/09/xmldsig#",
-            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702"
-        </camel.osgi.export.service>
     </properties>
 
     <dependencies>
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-common</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -161,7 +114,7 @@
         <dependency>
             <groupId>org.apache.cxf</groupId>
             <artifactId>cxf-core</artifactId>
-            <version>${cxf-version}</version>
+            <version>${cxf.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.cxf</groupId>
@@ -178,6 +131,10 @@
                     <groupId>org.apache.camel</groupId>
                     <artifactId>*</artifactId>
                 </exclusion>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
             </exclusions>
         </dependency>
         <dependency>
@@ -323,6 +280,61 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>org.apache.cxf</groupId>
+            <artifactId>cxf-rt-management</artifactId>
+            <version>${cxf-version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.cxf</groupId>
+            <artifactId>cxf-rt-rs-extension-providers</artifactId>
+            <version>${cxf-version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.cxf</groupId>
+            <artifactId>cxf-rt-rs-extension-search</artifactId>
+            <version>${cxf-version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.cxf</groupId>
+            <artifactId>cxf-rt-rs-json-basic</artifactId>
+            <version>${cxf-version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.cxf</groupId>
+            <artifactId>cxf-rt-rs-service-description</artifactId>
+            <version>${cxf-version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-soap</artifactId>
@@ -332,34 +344,46 @@
                     <groupId>org.apache.camel</groupId>
                     <artifactId>*</artifactId>
                 </exclusion>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
             </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-transport</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
                     <artifactId>*</artifactId>
                 </exclusion>
+                <exclusion>
+                    <groupId>org.apache.cxf</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
             </exclusions>
         </dependency>
         <dependency>
-            <groupId>org.apache.aries.blueprint</groupId>
-            <artifactId>org.apache.aries.blueprint.core</artifactId>
+            <groupId>org.osgi</groupId>
+            <artifactId>osgi.core</artifactId>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.osgi</groupId>
-            <artifactId>osgi.core</artifactId>
+            <artifactId>org.osgi.service.servlet</artifactId>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.osgi</groupId>
-            <artifactId>osgi.cmpn</artifactId>
+            <artifactId>org.osgi.service.cm</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.ops4j.pax.web</groupId>
+            <artifactId>pax-web-api</artifactId>
             <scope>provided</scope>
-            <optional>true</optional>
         </dependency>
         <dependency>
             <groupId>jakarta.xml.ws</groupId>
@@ -395,6 +419,11 @@
                                     <include>org.apache.cxf:cxf-rt-transports-http</include>
                                     <include>org.apache.cxf:cxf-rt-cxf-rt-security</include>
                                     <include>org.apache.cxf:cxf-rt-cxf-rt-rs-client</include>
+                                    <include>org.apache.cxf:cxf-rt-management</include>
+                                    <include>org.apache.cxf:cxf-rt-rs-extension-providers</include>
+                                    <include>org.apache.cxf:cxf-rt-rs-extension-search</include>
+                                    <include>org.apache.cxf:cxf-rt-rs-json-basic</include>
+                                    <include>org.apache.cxf:cxf-rt-rs-service-description</include>
                                     <include>org.apache.cxf:cxf-rt-ws-addr</include>
                                     <include>org.apache.cxf:cxf-rt-ws-policy</include>
                                     <include>org.apache.cxf:cxf-rt-wsdl</include>
@@ -402,6 +431,14 @@
                                     <include>org.apache.camel:camel-cxf-transport</include>
                                 </includes>
                             </artifactSet>
+                            <filters>
+                                <filter>
+                                    <artifact>*:*</artifact>
+                                    <excludes>
+                                        <exclude>schemas/**</exclude>
+                                    </excludes>
+                                </filter>
+                            </filters>
                         </configuration>
                     </execution>
                 </executions>
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/osgi/CXFActivator.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/osgi/CXFActivator.java
index d74141464..2d7203d45 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/osgi/CXFActivator.java
+++ b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/osgi/CXFActivator.java
@@ -20,9 +20,6 @@ package org.apache.camel.component.cxf.bus.osgi;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
-import org.apache.camel.component.cxf.helpers.CXFAPINamespaceHandler;
 import org.apache.cxf.bus.extension.Extension;
 import org.apache.cxf.bus.extension.ExtensionRegistry;
 import org.apache.cxf.common.util.CollectionUtils;
@@ -40,7 +37,6 @@ import org.osgi.util.tracker.ServiceTracker;
  * - CXFBundleListener
  * - Attaching ManagedWorkqueues to config admin service
  * - OsgiBusListener
- * - Blueprint namespaces
  */
 public class CXFActivator implements BundleActivator {
 
@@ -53,6 +49,7 @@ public class CXFActivator implements BundleActivator {
 
 
     /** {@inheritDoc}*/
+    @Override
     public void start(BundleContext context) throws Exception {
         workQueues = new ManagedWorkQueueList();
         cxfBundleListener = new CXFExtensionBundleListener(context.getBundle().getBundleId());
@@ -71,23 +68,6 @@ public class CXFActivator implements BundleActivator {
         extensions.add(createOsgiBusListenerExtension(context));
         extensions.add(createManagedWorkQueueListExtension(workQueues));
         ExtensionRegistry.addExtensions(extensions);
-
-        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-
-            @Override
-            public Object createNamespaceHandler() {
-                return new CXFAPINamespaceHandler();
-            }
-        };
-        NamespaceHandlerRegisterer.register(context, factory,
-                "http://cxf.apache.org/blueprint/core",
-                "http://cxf.apache.org/configuration/beans",
-                "http://cxf.apache.org/configuration/parameterized-types",
-                "http://cxf.apache.org/configuration/security",
-                "http://schemas.xmlsoap.org/wsdl/",
-                "http://www.w3.org/2005/08/addressing",
-                "http://schemas.xmlsoap.org/ws/2004/08/addressing");
-
     }
 
     private <T> ServiceRegistration<T> registerManagedServiceFactory(BundleContext context,
@@ -120,6 +100,7 @@ public class CXFActivator implements BundleActivator {
     }
 
     /** {@inheritDoc}*/
+    @Override
     public void stop(BundleContext context) throws Exception {
         context.removeBundleListener(cxfBundleListener);
         cxfBundleListener.shutdown();
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ext/logging/osgi/Activator.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ext/logging/osgi/Activator.java
index 7adbd0a85..a523cc304 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ext/logging/osgi/Activator.java
+++ b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ext/logging/osgi/Activator.java
@@ -55,10 +55,10 @@ public class Activator implements BundleActivator {
     }
 
     private static final class ConfigUpdater implements ManagedService {
-        private BundleContext bundleContext;
+        private final BundleContext bundleContext;
         private ServiceRegistration<?> serviceReg;
         private ServiceRegistration<?> intentReg;
-        private LoggingFeature logging;
+        private final LoggingFeature logging;
 
         ConfigUpdater(BundleContext bundleContext) {
             this.logging = new LoggingFeature();
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/Activator.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/Activator.java
deleted file mode 100644
index 8069c6641..000000000
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/Activator.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.camel.component.cxf.jaxrs.client.blueprint;
-
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
-import org.apache.camel.component.cxf.jaxrs.blueprint.JAXRSBPNamespaceHandler;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-/**
- * Registers blueprint namespace handler
- */
-public class Activator implements BundleActivator {
-
-    @Override
-    public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-                @Override
-                public Object createNamespaceHandler() {
-                    return new JAXRSBPNamespaceHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory,
-                    "http://cxf.apache.org/blueprint/jaxrs-client");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
-    }
-
-    @Override
-    public void stop(BundleContext context) throws Exception {
-    }
-
-}
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
index 170cd8ece..457aef220 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
+++ b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
@@ -21,7 +21,6 @@ import java.util.List;
 
 import org.apache.camel.component.cxf.bus.osgi.CXFActivator;
 import org.apache.camel.component.cxf.transport.http.osgi.HTTPTransportActivator;
-// import org.apache.camel.component.cxf.transport.http_jetty.osgi.HTTPJettyTransportActivator;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -29,16 +28,8 @@ public class MainActivator implements BundleActivator {
 
     private final List<BundleActivator> activators = List.of(
             new CXFActivator(),
-            new org.apache.camel.component.cxf.binding.soap.blueprint.Activator(),
             new org.apache.camel.component.cxf.ext.logging.osgi.Activator(),
-            new org.apache.camel.component.cxf.jaxrs.blueprint.Activator(),
-            new org.apache.camel.component.cxf.jaxws.blueprint.Activator(),
-            new org.apache.camel.component.cxf.frontend.blueprint.Activator(),
-            new org.apache.camel.component.cxf.jaxrs.client.blueprint.Activator(),
-            new HTTPTransportActivator(),
-//             new HTTPJettyTransportActivator(),
-            new org.apache.camel.component.cxf.ws.addressing.blueprint.Activator(),
-            new org.apache.camel.component.cxf.ws.policy.blueprint.Activator());
+            new HTTPTransportActivator());
 
     @Override
     public void start(BundleContext bundleContext) throws Exception {
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HTTPTransportActivator.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HTTPTransportActivator.java
index 7efa9d3aa..701c1137d 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HTTPTransportActivator.java
+++ b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HTTPTransportActivator.java
@@ -17,27 +17,26 @@
 
 package org.apache.camel.component.cxf.transport.http.osgi;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
-import org.apache.camel.component.cxf.transport.http.blueprint.HttpBPHandler;
+import org.apache.cxf.BusFactory;
 import org.apache.cxf.common.util.CollectionUtils;
 import org.apache.cxf.common.util.PropertyUtils;
+import org.apache.cxf.transport.DestinationFactory;
 import org.apache.cxf.transport.http.DestinationRegistry;
-import org.apache.cxf.transport.http.DestinationRegistryImpl;
 import org.apache.cxf.transport.http.HTTPConduitConfigurer;
 import org.apache.cxf.transport.http.HTTPTransportFactory;
+import org.ops4j.pax.web.service.http.HttpService;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
 import org.osgi.framework.ServiceRegistration;
 import org.osgi.service.cm.ManagedServiceFactory;
-import org.osgi.service.http.HttpService;
 import org.osgi.util.tracker.ServiceTracker;
 
 public class HTTPTransportActivator implements BundleActivator {
     private static final String DISABLE_DEFAULT_HTTP_TRANSPORT = "org.apache.cxf.osgi.http.transport.disable";
     private ServiceTracker<HttpService, ?> httpServiceTracker;
 
+    @Override
     public void start(final BundleContext context) throws Exception {
 
         ConfigAdminHttpConduitConfigurer conduitConfigurer = new ConfigAdminHttpConduitConfigurer();
@@ -53,25 +52,19 @@ public class HTTPTransportActivator implements BundleActivator {
             return;
         }
 
-        DestinationRegistry destinationRegistry = new DestinationRegistryImpl();
-        HTTPTransportFactory transportFactory = new HTTPTransportFactory(destinationRegistry);
+        //don't use constructor, use the extension manager to register the object
 
-//        HttpServiceTrackerCust customizer = new HttpServiceTrackerCust(destinationRegistry, context);
-//        httpServiceTracker = new ServiceTracker<>(context, HttpService.class, customizer);
-//        httpServiceTracker.open();
+        HTTPTransportFactory transportFactory =  BusFactory.getDefaultBus().getExtension(HTTPTransportFactory.class);
+        DestinationRegistry destinationRegistry = transportFactory.getRegistry();
+
+        HttpServiceTrackerCust customizer = new HttpServiceTrackerCust(destinationRegistry, context);
+        httpServiceTracker = new ServiceTracker<>(context, HttpService.class, customizer);
+        httpServiceTracker.open();
 
         context.registerService(DestinationRegistry.class.getName(), destinationRegistry, null);
         context.registerService(HTTPTransportFactory.class.getName(), transportFactory, null);
-
-        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-
-            @Override
-            public Object createNamespaceHandler() {
-                return new HttpBPHandler();
-            }
-        };
-        NamespaceHandlerRegisterer.register(context, factory,
-                "http://cxf.apache.org/transports/http/configuration");
+        //registers it also for the interface, as DestinationFactoryManagerImpl looks by DestinationFactory
+        context.registerService(DestinationFactory.class.getName(), transportFactory, null);
     }
 
     private <T> ServiceRegistration<T> registerService(BundleContext context, Class<T> serviceInterface,
@@ -80,6 +73,7 @@ public class HTTPTransportActivator implements BundleActivator {
                 CollectionUtils.singletonDictionary(Constants.SERVICE_PID, servicePid));
     }
 
+    @Override
     public void stop(BundleContext context) throws Exception {
         if (httpServiceTracker != null) {
             httpServiceTracker.close();
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HttpServiceTrackerCust.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HttpServiceTrackerCust.java
index 125526a56..3752b93c4 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HttpServiceTrackerCust.java
+++ b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/HttpServiceTrackerCust.java
@@ -21,13 +21,13 @@ import jakarta.servlet.Servlet;
 import org.apache.cxf.common.util.CollectionUtils;
 import org.apache.cxf.transport.http.DestinationRegistry;
 import org.apache.cxf.transport.servlet.CXFNonSpringServlet;
+import org.ops4j.pax.web.service.http.HttpService;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
 import org.osgi.framework.ServiceReference;
 import org.osgi.framework.ServiceRegistration;
 import org.osgi.service.cm.ConfigurationException;
 import org.osgi.service.cm.ManagedService;
-import org.osgi.service.http.HttpService;
 import org.osgi.util.tracker.ServiceTrackerCustomizer;
 
 final class HttpServiceTrackerCust implements ServiceTrackerCustomizer<HttpService, HttpService> {
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/ServletExporter.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/ServletExporter.java
index 4f854d4b6..bf768a56a 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/ServletExporter.java
+++ b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/osgi/ServletExporter.java
@@ -25,11 +25,11 @@ import java.util.logging.Logger;
 
 import jakarta.servlet.Servlet;
 import org.apache.cxf.common.logging.LogUtils;
+import org.ops4j.pax.web.service.http.HttpContext;
+import org.ops4j.pax.web.service.http.HttpService;
 import org.osgi.framework.ServiceRegistration;
 import org.osgi.service.cm.ConfigurationException;
 import org.osgi.service.cm.ManagedService;
-import org.osgi.service.http.HttpContext;
-import org.osgi.service.http.HttpService;
 
 class ServletExporter implements ManagedService {
     protected static final Logger LOG = LogUtils.getL7dLogger(ServletExporter.class);
@@ -121,8 +121,7 @@ class ServletExporter implements ManagedService {
         HttpContext context = httpService.createDefaultHttpContext();
         try {
             LOG.log(Level.INFO, "Registering new instance of \"" + alias + "\" servlet");
-            // TODO: use the registerServlet method when upgrading to OSGI CMPN 8
-//            httpService.registerServlet(alias, servlet, sprops, context);
+            httpService.registerServlet(alias, servlet, sprops, context);
         } catch (Exception e) {
             LOG.log(Level.WARNING, "Error registering CXF OSGi servlet " + e.getMessage(), e);
         }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/Activator.java b/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/Activator.java
deleted file mode 100644
index cb30a6a4f..000000000
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/Activator.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * <p>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p>
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.camel.component.cxf.ws.policy.blueprint;
-
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class Activator implements BundleActivator {
-
-    @Override
-    public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-
-                @Override
-                public Object createNamespaceHandler() {
-                    return new PolicyBPHandler();
-                }
-            };
-            NamespaceHandlerRegisterer
-                    .register(context, factory, "http://cxf.apache.org/policy", "http://www.w3.org/ns/ws-policy",
-                            "http://www.w3.org/2006/07/ws-policy", "http://schemas.xmlsoap.org/ws/2004/09/policy",
-                            "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
-                            "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd",
-                            "http://www.w3.org/2000/09/xmldsig#",
-                            "http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
-    }
-
-    @Override
-    public void stop(BundleContext context) throws Exception {
-    }
-
-}
diff --git a/components/camel-cxf/camel-cxf-blueprint/pom.xml b/components/camel-cxf/camel-cxf-blueprint/pom.xml
index ce0a59424..6d4141046 100644
--- a/components/camel-cxf/camel-cxf-blueprint/pom.xml
+++ b/components/camel-cxf/camel-cxf-blueprint/pom.xml
@@ -30,19 +30,19 @@
     <artifactId>camel-cxf-blueprint</artifactId>
     <packaging>bundle</packaging>
     <name>Apache Camel :: Karaf :: Components :: CXF :: Blueprint</name>
+    <version>${revision}</version>
     <properties>
+        <revision>${camel-cxf.tesb.version}</revision>
         <firstVersion>3.2.0</firstVersion>
         <camel.osgi.export>
-            org.apache.camel.component.cxf.blueprint.helpers;version=${upstream.version},
-            org.apache.camel.component.cxf.blueprint.jaxrs;version=${upstream.version},
+            org.apache.camel.component.cxf.blueprint*;version=${project.version},
+            org.apache.camel.component.cxf.jaxrs.blueprint;version=${project.version},
         </camel.osgi.export>
-        <camel-osgi-camel-import>
-            org.apache.camel.component.cxf.helpers;${camel-osgi-import-camel-version},
-            org.apache.camel.component.cxf.configuration.blueprint;${camel-osgi-import-camel-version},
-        </camel-osgi-camel-import>
         <camel.osgi.import>
             jakarta.xml.bind*;version="${camel-osgi-jakarta-bind-version}",
-            org.apache.aries.blueprint,
+            jakarta.ws.rs*;version="${camel-osgi-jakarta-ws-rs-version}",
+            jakarta.servlet*;version="${camel-osgi-jakarta-servlet-version}",
+            org.apache.aries.blueprint*,
             org.w3c*,
             org.osgi.util*,
             org.osgi.service*,
@@ -51,6 +51,29 @@
             org.apache.cxf.*;version="${camel-osgi-cxf-version}",
             org.slf4j
         </camel.osgi.import>
+        <camel.osgi.activator>org.apache.camel.component.cxf.blueprint.MainActivator</camel.osgi.activator>
+        <camel.osgi.export.service>
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/core",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/configuration/beans",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/configuration/parameterized-types",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/configuration/security",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://schemas.xmlsoap.org/wsdl/",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/bindings/soap",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/jaxrs",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/jaxws",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/simple",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/blueprint/jaxrs-client",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/transports/http/configuration",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/ws/addressing",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://cxf.apache.org/policy",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://www.w3.org/ns/ws-policy",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://www.w3.org/2006/07/ws-policy",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://schemas.xmlsoap.org/ws/2004/09/policy",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://www.w3.org/2000/09/xmldsig#",
+            org.apache.aries.blueprint.NamespaceHandler;osgi.service.blueprint.namespace="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702"
+        </camel.osgi.export.service>
     </properties>
 
     <dependencies>
@@ -58,12 +81,12 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-soap</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-rest</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
         </dependency>
 
         <!-- OSGi, Blueprint -->
@@ -114,7 +137,7 @@
                         <configuration>
                             <artifacts>
                                 <artifact>
-                                    <file>./src/main/resources/schema/blueprint/camel-cxf.xsd</file>
+                                    <file>./src/main/resources/schemas/blueprint/camel-cxf.xsd</file>
                                     <classifier>blueprint</classifier>
                                     <type>xsd</type>
                                 </artifact>
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/MainActivator.java
similarity index 61%
copy from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
copy to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/MainActivator.java
index 170cd8ece..bf5cf3c4b 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/osgi/MainActivator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/MainActivator.java
@@ -15,13 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.osgi;
+package org.apache.camel.component.cxf.blueprint;
 
 import java.util.List;
 
-import org.apache.camel.component.cxf.bus.osgi.CXFActivator;
-import org.apache.camel.component.cxf.transport.http.osgi.HTTPTransportActivator;
-// import org.apache.camel.component.cxf.transport.http_jetty.osgi.HTTPJettyTransportActivator;
+import org.apache.camel.component.cxf.blueprint.bus.CXFActivator;
+import org.apache.camel.component.cxf.blueprint.transport.http.HTTPTransportActivator;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -29,16 +28,14 @@ public class MainActivator implements BundleActivator {
 
     private final List<BundleActivator> activators = List.of(
             new CXFActivator(),
-            new org.apache.camel.component.cxf.binding.soap.blueprint.Activator(),
-            new org.apache.camel.component.cxf.ext.logging.osgi.Activator(),
-            new org.apache.camel.component.cxf.jaxrs.blueprint.Activator(),
-            new org.apache.camel.component.cxf.jaxws.blueprint.Activator(),
-            new org.apache.camel.component.cxf.frontend.blueprint.Activator(),
-            new org.apache.camel.component.cxf.jaxrs.client.blueprint.Activator(),
+            new org.apache.camel.component.cxf.blueprint.binding.soap.Activator(),
+            new org.apache.camel.component.cxf.blueprint.jaxrs.Activator(),
+            new org.apache.camel.component.cxf.blueprint.jaxws.Activator(),
+            new org.apache.camel.component.cxf.blueprint.frontend.Activator(),
+            new org.apache.camel.component.cxf.blueprint.jaxrs.client.Activator(),
             new HTTPTransportActivator(),
-//             new HTTPJettyTransportActivator(),
-            new org.apache.camel.component.cxf.ws.addressing.blueprint.Activator(),
-            new org.apache.camel.component.cxf.ws.policy.blueprint.Activator());
+            new org.apache.camel.component.cxf.blueprint.ws.addressing.Activator(),
+            new org.apache.camel.component.cxf.blueprint.ws.policy.Activator());
 
     @Override
     public void start(BundleContext bundleContext) throws Exception {
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/Activator.java
similarity index 62%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/Activator.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/Activator.java
index 2c395a364..3edd4e01e 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/Activator.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.binding.soap.blueprint;
+package org.apache.camel.component.cxf.blueprint.binding.soap;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -26,22 +26,19 @@ public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-                @Override
-                public Object createNamespaceHandler() {
-                    return new SoapBindingBPHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory,
-                    "http://cxf.apache.org/blueprint/bindings/soap");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+            @Override
+            public Object createNamespaceHandler() {
+                return new SoapBindingBPHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory,
+                "http://cxf.apache.org/blueprint/bindings/soap");
     }
 
     @Override
     public void stop(BundleContext context) throws Exception {
+        // nothing to do
     }
 
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapBindingBPHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapBindingBPHandler.java
similarity index 89%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapBindingBPHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapBindingBPHandler.java
index ab45b5347..d3b2c1580 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapBindingBPHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapBindingBPHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.binding.soap.blueprint;
+package org.apache.camel.component.cxf.blueprint.binding.soap;
 
 import java.net.URL;
 import java.util.Set;
@@ -24,12 +24,13 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.helpers.BaseNamespaceHandler;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
 
 public class SoapBindingBPHandler extends BaseNamespaceHandler {
 
+    @Override
     public URL getSchemaLocation(String s) {
         if ("http://cxf.apache.org/blueprint/bindings/soap".equals(s)) {
             return getClass().getClassLoader().getResource("schemas/configuration/blueprint/soap.xsd");
@@ -37,15 +38,18 @@ public class SoapBindingBPHandler extends BaseNamespaceHandler {
         return super.findCoreSchemaLocation(s);
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
 
+    @Override
     public Metadata parse(Element element, ParserContext context) {
         return new SoapBindingBPInfoConfigDefinitionParser().parse(element, context);
     }
 
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata componentMetadata, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapBindingBPInfoConfigDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapBindingBPInfoConfigDefinitionParser.java
similarity index 95%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapBindingBPInfoConfigDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapBindingBPInfoConfigDefinitionParser.java
index 9e186a2aa..2613fae6c 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapBindingBPInfoConfigDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapBindingBPInfoConfigDefinitionParser.java
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.binding.soap.blueprint;
+package org.apache.camel.component.cxf.blueprint.binding.soap;
 
 import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
 import org.apache.aries.blueprint.mutable.MutablePassThroughMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.binding.soap.SoapBindingConfiguration;
 import org.osgi.service.blueprint.reflect.Metadata;
 
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapVersionTypeConverter.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapVersionTypeConverter.java
similarity index 96%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapVersionTypeConverter.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapVersionTypeConverter.java
index 961f9ec51..1d2a14158 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/binding/soap/blueprint/SoapVersionTypeConverter.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/binding/soap/SoapVersionTypeConverter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.binding.soap.blueprint;
+package org.apache.camel.component.cxf.blueprint.binding.soap;
 
 import org.apache.cxf.binding.soap.Soap11;
 import org.apache.cxf.binding.soap.Soap12;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintBeanLocator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintBeanLocator.java
similarity index 99%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintBeanLocator.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintBeanLocator.java
index c725d0458..5d031d4fc 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintBeanLocator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintBeanLocator.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.blueprint.bus;
 
 import java.util.ArrayList;
 import java.util.Collection;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintBus.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintBus.java
similarity index 98%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintBus.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintBus.java
index 38bcc5f01..a9ccdee1b 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintBus.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintBus.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.blueprint.bus;
 
 import java.security.AccessController;
 import java.security.PrivilegedAction;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintNameSpaceHandlerFactory.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintNameSpaceHandlerFactory.java
similarity index 95%
copy from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintNameSpaceHandlerFactory.java
copy to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintNameSpaceHandlerFactory.java
index d106f2ba1..e68f00591 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintNameSpaceHandlerFactory.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BlueprintNameSpaceHandlerFactory.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.blueprint.bus;
 
 public interface BlueprintNameSpaceHandlerFactory {
     /**
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BundleDelegatingClassLoader.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BundleDelegatingClassLoader.java
similarity index 98%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BundleDelegatingClassLoader.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BundleDelegatingClassLoader.java
index c436aeafd..98ea1c584 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BundleDelegatingClassLoader.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BundleDelegatingClassLoader.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.blueprint.bus;
 
 import java.io.IOException;
 import java.net.URL;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BusDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BusDefinitionParser.java
similarity index 95%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BusDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BusDefinitionParser.java
index 1fde875e8..5b672fd53 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BusDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/BusDefinitionParser.java
@@ -15,13 +15,13 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.blueprint.bus;
 
 import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.common.util.StringUtils;
 import org.osgi.service.blueprint.reflect.Metadata;
 
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/CXFActivator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/CXFActivator.java
new file mode 100644
index 000000000..d89288718
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/CXFActivator.java
@@ -0,0 +1,67 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.camel.component.cxf.blueprint.bus;
+
+import org.apache.camel.component.cxf.blueprint.helpers.CXFAPINamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.helpers.CxfNamespaceHandler;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+/**
+ * Is called in OSGi on start and stop of the cxf bundle.
+ * Manages
+ * - Blueprint namespaces
+ */
+public class CXFActivator implements BundleActivator {
+
+    /** {@inheritDoc}*/
+    @Override
+    public void start(BundleContext context) throws Exception {
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+
+            @Override
+            public Object createNamespaceHandler() {
+                return new CXFAPINamespaceHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory,
+                "http://cxf.apache.org/blueprint/core",
+                "http://cxf.apache.org/configuration/beans",
+                "http://cxf.apache.org/configuration/parameterized-types",
+                "http://cxf.apache.org/configuration/security",
+                "http://schemas.xmlsoap.org/wsdl/",
+                "http://www.w3.org/2005/08/addressing",
+                "http://schemas.xmlsoap.org/ws/2004/08/addressing");
+        factory = new BlueprintNameSpaceHandlerFactory() {
+
+            @Override
+            public Object createNamespaceHandler() {
+                return new CxfNamespaceHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory,
+                "https://camel.apache.org/schema/blueprint/cxf");
+
+    }
+
+    /** {@inheritDoc}*/
+    @Override
+    public void stop(BundleContext context) throws Exception {
+        // nothing to do
+    }
+}
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/ConfigurerImpl.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/ConfigurerImpl.java
similarity index 99%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/ConfigurerImpl.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/ConfigurerImpl.java
index a61b37509..783396951 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/ConfigurerImpl.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/ConfigurerImpl.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.blueprint.bus;
 
 import java.lang.reflect.Method;
 import java.util.ArrayList;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/Messages.properties b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/Messages.properties
similarity index 100%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/Messages.properties
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/Messages.properties
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/NamespaceHandlerRegisterer.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/NamespaceHandlerRegisterer.java
similarity index 97%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/NamespaceHandlerRegisterer.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/NamespaceHandlerRegisterer.java
index 7fbee0be5..c3a3dcff1 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/NamespaceHandlerRegisterer.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/bus/NamespaceHandlerRegisterer.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.blueprint.bus;
 
 import java.util.Dictionary;
 import java.util.Hashtable;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/AbstractBPBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/AbstractBPBeanDefinitionParser.java
similarity index 99%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/AbstractBPBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/AbstractBPBeanDefinitionParser.java
index 2b0d4af66..134283f4e 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/AbstractBPBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/AbstractBPBeanDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.configuration.blueprint;
+package org.apache.camel.component.cxf.blueprint.configuration;
 
 import java.io.StringReader;
 import java.io.StringWriter;
@@ -23,6 +23,11 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
+import jakarta.xml.bind.JAXBContext;
+import jakarta.xml.bind.JAXBElement;
+import jakarta.xml.bind.JAXBException;
+import jakarta.xml.bind.Unmarshaller;
+
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;
@@ -31,10 +36,6 @@ import org.w3c.dom.Attr;
 import org.w3c.dom.Element;
 import org.w3c.dom.NamedNodeMap;
 
-import jakarta.xml.bind.JAXBContext;
-import jakarta.xml.bind.JAXBElement;
-import jakarta.xml.bind.JAXBException;
-import jakarta.xml.bind.Unmarshaller;
 import org.apache.aries.blueprint.ComponentDefinitionRegistry;
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.PassThroughMetadata;
@@ -43,7 +44,7 @@ import org.apache.aries.blueprint.mutable.MutableCollectionMetadata;
 import org.apache.aries.blueprint.mutable.MutablePassThroughMetadata;
 import org.apache.aries.blueprint.mutable.MutableRefMetadata;
 import org.apache.aries.blueprint.mutable.MutableValueMetadata;
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintBus;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintBus;
 import org.apache.cxf.common.jaxb.JAXBContextCache;
 import org.apache.cxf.common.jaxb.JAXBContextCache.CachedContextAndSchemas;
 import org.apache.cxf.common.jaxb.JAXBUtils;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/InterceptorTypeConverter.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/InterceptorTypeConverter.java
similarity index 95%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/InterceptorTypeConverter.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/InterceptorTypeConverter.java
index 519552f3f..868fedfec 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/InterceptorTypeConverter.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/InterceptorTypeConverter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.configuration.blueprint;
+package org.apache.camel.component.cxf.blueprint.configuration;
 
 import org.apache.cxf.interceptor.Interceptor;
 import org.osgi.service.blueprint.container.Converter;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/SimpleBPBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/SimpleBPBeanDefinitionParser.java
similarity index 94%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/SimpleBPBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/SimpleBPBeanDefinitionParser.java
index 7e8f4c94b..8d19f7f77 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/configuration/blueprint/SimpleBPBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/configuration/SimpleBPBeanDefinitionParser.java
@@ -15,13 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.configuration.blueprint;
+package org.apache.camel.component.cxf.blueprint.configuration;
 
 import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
 import org.osgi.service.blueprint.reflect.BeanProperty;
 import org.osgi.service.blueprint.reflect.Metadata;
 
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/Activator.java
similarity index 63%
copy from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
copy to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/Activator.java
index d5456931d..a58ff04c6 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/Activator.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxws.blueprint;
+package org.apache.camel.component.cxf.blueprint.frontend;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -26,22 +26,20 @@ public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-
-                @Override
-                public Object createNamespaceHandler() {
-                    return new JAXWSBPNamespaceHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory, "http://cxf.apache.org/blueprint/jaxws");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+
+            @Override
+            public Object createNamespaceHandler() {
+                return new SimpleBPNamespaceHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory, "http://cxf.apache.org/blueprint/simple");
+
     }
 
     @Override
     public void stop(BundleContext context) throws Exception {
+        // nothing to do
     }
 
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/ClientProxyFactoryBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/ClientProxyFactoryBeanDefinitionParser.java
similarity index 95%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/ClientProxyFactoryBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/ClientProxyFactoryBeanDefinitionParser.java
index 199da2f48..c806ce78d 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/ClientProxyFactoryBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/ClientProxyFactoryBeanDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.frontend.blueprint;
+package org.apache.camel.component.cxf.blueprint.frontend;
 
 import javax.xml.namespace.QName;
 
@@ -23,7 +23,7 @@ import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.SimpleBPBeanDefinitionParser;
 import org.apache.cxf.frontend.ClientProxyFactoryBean;
 
 public class ClientProxyFactoryBeanDefinitionParser extends SimpleBPBeanDefinitionParser {
@@ -38,6 +38,7 @@ public class ClientProxyFactoryBeanDefinitionParser extends SimpleBPBeanDefiniti
     public String getFactorySuffix() {
         return ".proxyFactory";
     }
+    @Override
     public String getFactoryCreateType(Element element) {
         return element.getAttribute("serviceClass");
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/ServerFactoryBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/ServerFactoryBeanDefinitionParser.java
similarity index 97%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/ServerFactoryBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/ServerFactoryBeanDefinitionParser.java
index 9f087dde5..5b867e389 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/ServerFactoryBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/ServerFactoryBeanDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.frontend.blueprint;
+package org.apache.camel.component.cxf.blueprint.frontend;
 
 import javax.xml.namespace.QName;
 
@@ -23,7 +23,7 @@ import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.SimpleBPBeanDefinitionParser;
 import org.apache.cxf.common.injection.NoJSR250Annotations;
 import org.apache.cxf.common.util.StringUtils;
 import org.apache.cxf.endpoint.Server;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/SimpleBPNamespaceHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/SimpleBPNamespaceHandler.java
similarity index 92%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/SimpleBPNamespaceHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/SimpleBPNamespaceHandler.java
index 1689a9524..547d22698 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/SimpleBPNamespaceHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/frontend/SimpleBPNamespaceHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.frontend.blueprint;
+package org.apache.camel.component.cxf.blueprint.frontend;
 
 import java.net.URL;
 import java.util.Set;
@@ -25,7 +25,7 @@ import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.Namespaces;
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.helpers.BaseNamespaceHandler;
 import org.osgi.service.blueprint.container.BlueprintContainer;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
@@ -37,6 +37,7 @@ public class SimpleBPNamespaceHandler extends BaseNamespaceHandler {
     public SimpleBPNamespaceHandler() {
     }
 
+    @Override
     public URL getSchemaLocation(String namespace) {
         if ("http://cxf.apache.org/blueprint/simple".equals(namespace)) {
             return getClass().getClassLoader().getResource("schemas/blueprint/simple.xsd");
@@ -45,6 +46,7 @@ public class SimpleBPNamespaceHandler extends BaseNamespaceHandler {
     }
 
 
+    @Override
     public Metadata parse(Element element, ParserContext context) {
         String s = element.getLocalName();
         if ("server".equals(s)) {
@@ -55,10 +57,12 @@ public class SimpleBPNamespaceHandler extends BaseNamespaceHandler {
         return null;
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata component, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/AbstractBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/AbstractBeanDefinitionParser.java
index 20b64f091..3d50861cf 100644
--- a/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/AbstractBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/AbstractBeanDefinitionParser.java
@@ -22,7 +22,7 @@ import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.common.util.StringUtils;
 import org.osgi.service.blueprint.reflect.BeanMetadata;
 
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/helpers/BaseNamespaceHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/BaseNamespaceHandler.java
similarity index 96%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/helpers/BaseNamespaceHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/BaseNamespaceHandler.java
index ac6ff6721..e7972cc5d 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/helpers/BaseNamespaceHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/BaseNamespaceHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.helpers;
+package org.apache.camel.component.cxf.blueprint.helpers;
 
 import java.net.URL;
 
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/helpers/CXFAPINamespaceHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/CXFAPINamespaceHandler.java
similarity index 94%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/helpers/CXFAPINamespaceHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/CXFAPINamespaceHandler.java
index f854bed9c..424e60780 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/helpers/CXFAPINamespaceHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/CXFAPINamespaceHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.helpers;
+package org.apache.camel.component.cxf.blueprint.helpers;
 
 import java.net.URL;
 import java.util.Set;
@@ -27,8 +27,8 @@ import org.apache.aries.blueprint.NamespaceHandler;
 import org.apache.aries.blueprint.Namespaces;
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.bus.blueprint.BusDefinitionParser;
-import org.apache.camel.component.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.bus.BusDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.SimpleBPBeanDefinitionParser;
 import org.apache.cxf.feature.FastInfosetFeature;
 import org.apache.cxf.workqueue.AutomaticWorkQueueImpl;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
@@ -43,6 +43,7 @@ import org.osgi.service.blueprint.reflect.Metadata;
         "http://schemas.xmlsoap.org/ws/2004/08/addressing"})
 public class CXFAPINamespaceHandler implements NamespaceHandler {
 
+    @Override
     public URL getSchemaLocation(String namespace) {
         String location = null;
 
@@ -68,7 +69,7 @@ public class CXFAPINamespaceHandler implements NamespaceHandler {
         } else if ("http://schemas.xmlsoap.org/ws/2004/08/addressing".equals(namespace)) {
             location = "schemas/wsdl/addressing.xsd";
         } else if ("http://cxf.apache.org/blueprint/core".equals(namespace)) {
-            location = "schemas/blueprint/core.xsd";
+            location = "schemas/blueprint/cxf-core.xsd";
         }
         if (location != null) {
             return getClass().getClassLoader().getResource(location);
@@ -76,7 +77,7 @@ public class CXFAPINamespaceHandler implements NamespaceHandler {
         return null;
     }
 
-
+    @Override
     @SuppressWarnings("deprecation")
     public Metadata parse(Element element, ParserContext context) {
         String s = element.getLocalName();
@@ -113,11 +114,13 @@ public class CXFAPINamespaceHandler implements NamespaceHandler {
         return null;
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
         //probably should have the various stuff in cxf-api in here?
-        return null;
+        return Set.of();
     }
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata component, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/CxfNamespaceHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/CxfNamespaceHandler.java
index 5ad2a3931..41340ad98 100644
--- a/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/CxfNamespaceHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/helpers/CxfNamespaceHandler.java
@@ -17,15 +17,12 @@
 package org.apache.camel.component.cxf.blueprint.helpers;
 
 import java.net.URL;
-import java.util.Arrays;
-import java.util.HashSet;
 import java.util.Set;
 
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
 import org.slf4j.Logger;
@@ -37,7 +34,7 @@ public class CxfNamespaceHandler extends BaseNamespaceHandler {
     @Override
     public URL getSchemaLocation(String s) {
         if ("https://camel.apache.org/schema/blueprint/cxf".equals(s) || "https://camel.apache.org/schema/blueprint/cxf/".equals(s)) {
-            return getClass().getClassLoader().getResource("schema/blueprint/camel-cxf.xsd");
+            return getClass().getClassLoader().getResource("schemas/blueprint/camel-cxf.xsd");
         }
         return super.findCoreSchemaLocation(s);
     }
@@ -45,7 +42,7 @@ public class CxfNamespaceHandler extends BaseNamespaceHandler {
     @Override
     @SuppressWarnings({"rawtypes"})
     public Set<Class> getManagedClasses() {
-        return new HashSet<>(Arrays.asList(CxfNamespaceHandler.class));
+        return Set.of(CxfNamespaceHandler.class);
     }
 
     @Override
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/Activator.java
similarity index 66%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/Activator.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/Activator.java
index 984c460eb..cd9bfe4ed 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/Activator.java
@@ -15,12 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxrs.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxrs;
 
 import jakarta.ws.rs.ext.RuntimeDelegate;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.apache.cxf.jaxrs.impl.RuntimeDelegateImpl;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
@@ -29,18 +29,14 @@ public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-                @Override
-                public Object createNamespaceHandler() {
-                    return new JAXRSBPNamespaceHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory,
-                    "http://cxf.apache.org/blueprint/jaxrs");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+            @Override
+            public Object createNamespaceHandler() {
+                return new JAXRSBPNamespaceHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory,
+                "http://cxf.apache.org/blueprint/jaxrs");
 
         // Define the runtime delegate to use
         RuntimeDelegate.setInstance(new RuntimeDelegateImpl());
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/BlueprintResourceFactory.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/BlueprintResourceFactory.java
similarity index 98%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/BlueprintResourceFactory.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/BlueprintResourceFactory.java
index 8736ce137..2e99b4613 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/BlueprintResourceFactory.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/BlueprintResourceFactory.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxrs.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxrs;
 
 import java.lang.reflect.Constructor;
 import java.lang.reflect.Method;
@@ -24,6 +24,7 @@ import java.util.Collections;
 import java.util.Map;
 
 import jakarta.ws.rs.core.Application;
+
 import org.apache.cxf.common.util.ClassHelper;
 import org.apache.cxf.helpers.CastUtils;
 import org.apache.cxf.jaxrs.lifecycle.ResourceProvider;
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/CxfRsBlueprintEndpoint.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/CxfRsBlueprintEndpoint.java
index 00a45dd44..86150f93e 100644
--- a/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/CxfRsBlueprintEndpoint.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/CxfRsBlueprintEndpoint.java
@@ -33,7 +33,7 @@ import org.osgi.framework.BundleContext;
 import org.osgi.service.blueprint.container.BlueprintContainer;
 
 public class CxfRsBlueprintEndpoint extends CxfRsEndpoint {
-    private AbstractJAXRSFactoryBean bean;
+    private final AbstractJAXRSFactoryBean bean;
     private BlueprintContainer blueprintContainer;
     private BundleContext bundleContext;
     private BlueprintCamelContext blueprintCamelContext;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/JAXRSBPNamespaceHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/JAXRSBPNamespaceHandler.java
similarity index 94%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/JAXRSBPNamespaceHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/JAXRSBPNamespaceHandler.java
index 8d7ca3e06..5ba10e7ca 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/JAXRSBPNamespaceHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/JAXRSBPNamespaceHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxrs.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxrs;
 
 import java.net.URL;
 import java.util.Collections;
@@ -29,7 +29,7 @@ import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.Namespaces;
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.helpers.BaseNamespaceHandler;
 import org.apache.cxf.staxutils.StaxUtils;
 import org.apache.cxf.staxutils.W3CDOMStreamWriter;
 import org.apache.cxf.staxutils.transform.OutTransformWriter;
@@ -44,6 +44,7 @@ public class JAXRSBPNamespaceHandler extends BaseNamespaceHandler {
     public JAXRSBPNamespaceHandler() {
     }
 
+    @Override
     public URL getSchemaLocation(String namespace) {
         if ("http://cxf.apache.org/blueprint/jaxrs".equals(namespace)
                 || "http://cxf.apache.org/schemas/jaxrs.xsd".equals(namespace)) {
@@ -55,6 +56,7 @@ public class JAXRSBPNamespaceHandler extends BaseNamespaceHandler {
     }
 
 
+    @Override
     public Metadata parse(Element element, ParserContext context) {
         String s = element.getLocalName();
         if ("server".equals(s)) {
@@ -66,10 +68,12 @@ public class JAXRSBPNamespaceHandler extends BaseNamespaceHandler {
         }
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata component, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/JAXRSServerFactoryBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/JAXRSServerFactoryBeanDefinitionParser.java
similarity index 97%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/JAXRSServerFactoryBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/JAXRSServerFactoryBeanDefinitionParser.java
index ce4fec0bf..19ac9a377 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/JAXRSServerFactoryBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/JAXRSServerFactoryBeanDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxrs.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxrs;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -29,7 +29,7 @@ import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
 import org.apache.aries.blueprint.mutable.MutableCollectionMetadata;
 import org.apache.aries.blueprint.mutable.MutablePassThroughMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.SimpleBPBeanDefinitionParser;
 import org.apache.cxf.common.injection.NoJSR250Annotations;
 import org.apache.cxf.endpoint.Server;
 import org.apache.cxf.helpers.DOMUtils;
@@ -60,7 +60,7 @@ public class JAXRSServerFactoryBeanDefinitionParser extends SimpleBPBeanDefiniti
             MutableCollectionMetadata tempFactories = context.createMetadata(MutableCollectionMetadata.class);
             for (String v : values) {
                 String theValue = v.trim();
-                if (theValue.length() > 0) {
+                if (!theValue.isEmpty()) {
 
                     MutablePassThroughMetadata factory
                             = context.createMetadata(MutablePassThroughMetadata.class);
@@ -155,12 +155,13 @@ public class JAXRSServerFactoryBeanDefinitionParser extends SimpleBPBeanDefiniti
 
     public static class PassThroughCallable<T> implements Callable<T> {
 
-        private T value;
+        private final T value;
 
         public PassThroughCallable(T value) {
             this.value = value;
         }
 
+        @Override
         public T call() throws Exception {
             return value;
         }
@@ -191,10 +192,13 @@ public class JAXRSServerFactoryBeanDefinitionParser extends SimpleBPBeanDefiniti
         public BPJAXRSServerFactoryBean(JAXRSServiceFactoryBean fact) {
             super(fact);
         }
+
+        @Override
         public Server getServer() {
             return server;
         }
 
+        @Override
         public void init() {
             create();
         }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/Activator.java
similarity index 62%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/Activator.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/Activator.java
index a50a8c7ab..312dcac2d 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/frontend/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/Activator.java
@@ -15,34 +15,33 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.frontend.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxrs.client;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
+/**
+ * Registers blueprint namespace handler
+ */
 public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
-
-                @Override
-                public Object createNamespaceHandler() {
-                    return new SimpleBPNamespaceHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory, "http://cxf.apache.org/blueprint/simple");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
-
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+            @Override
+            public Object createNamespaceHandler() {
+                return new JAXRSBPNamespaceHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory,
+                "http://cxf.apache.org/blueprint/jaxrs-client");
     }
 
     @Override
     public void stop(BundleContext context) throws Exception {
+        // nothing to do
     }
 
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/JAXRSBPNamespaceHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/JAXRSBPNamespaceHandler.java
similarity index 89%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/JAXRSBPNamespaceHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/JAXRSBPNamespaceHandler.java
index 711e971f2..45e722a43 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/JAXRSBPNamespaceHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/JAXRSBPNamespaceHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxrs.client.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxrs.client;
 
 import java.net.URL;
 import java.util.Set;
@@ -33,12 +33,13 @@ import org.osgi.service.blueprint.reflect.Metadata;
 @Namespaces("http://cxf.apache.org/blueprint/jaxrs-client")
 public class JAXRSBPNamespaceHandler implements NamespaceHandler {
     private BlueprintContainer blueprintContainer;
-    private org.apache.camel.component.cxf.jaxrs.blueprint.JAXRSBPNamespaceHandler jaxRSBPNamespaceHandler;
+    private final org.apache.camel.component.cxf.blueprint.jaxrs.JAXRSBPNamespaceHandler jaxRSBPNamespaceHandler;
 
     public JAXRSBPNamespaceHandler() {
-        jaxRSBPNamespaceHandler = new org.apache.camel.component.cxf.jaxrs.blueprint.JAXRSBPNamespaceHandler();
+        jaxRSBPNamespaceHandler = new org.apache.camel.component.cxf.blueprint.jaxrs.JAXRSBPNamespaceHandler();
     }
 
+    @Override
     public URL getSchemaLocation(String namespace) {
         if ("http://cxf.apache.org/blueprint/jaxrs-client".equals(namespace)) {
             return getClass().getClassLoader().getResource("schemas/blueprint/jaxrs-client.xsd");
@@ -47,6 +48,7 @@ public class JAXRSBPNamespaceHandler implements NamespaceHandler {
     }
 
 
+    @Override
     public Metadata parse(Element element, ParserContext context) {
         String s = element.getLocalName();
         if ("client".equals(s)) {
@@ -55,10 +57,12 @@ public class JAXRSBPNamespaceHandler implements NamespaceHandler {
         return null;
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata component, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/JAXRSClientFactoryBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/JAXRSClientFactoryBeanDefinitionParser.java
similarity index 95%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/JAXRSClientFactoryBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/JAXRSClientFactoryBeanDefinitionParser.java
index 8d14aff76..e14c09485 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxrs/client/blueprint/JAXRSClientFactoryBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxrs/client/JAXRSClientFactoryBeanDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxrs.client.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxrs.client;
 
 import java.util.List;
 
@@ -27,8 +27,8 @@ import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
 import org.apache.aries.blueprint.mutable.MutableCollectionMetadata;
 import org.apache.aries.blueprint.mutable.MutablePassThroughMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
-import org.apache.camel.component.cxf.jaxrs.blueprint.JAXRSServerFactoryBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.SimpleBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.jaxrs.JAXRSServerFactoryBeanDefinitionParser;
 import org.apache.cxf.jaxrs.client.Client;
 import org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean;
 import org.apache.cxf.jaxrs.model.UserResource;
@@ -45,6 +45,7 @@ public class JAXRSClientFactoryBeanDefinitionParser extends SimpleBPBeanDefiniti
     public String getFactorySuffix() {
         return ".proxyFactory";
     }
+    @Override
     public String getFactoryCreateType(Element element) {
         return Client.class.getName();
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/addressing/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/Activator.java
similarity index 62%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/addressing/blueprint/Activator.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/Activator.java
index 37a3318d1..57a324201 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/addressing/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/Activator.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.ws.addressing.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxws;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -26,23 +26,19 @@ public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
 
-                @Override
-                public Object createNamespaceHandler() {
-                    return new WsBPHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory,
-                    "http://cxf.apache.org/ws/addressing");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
+            @Override
+            public Object createNamespaceHandler() {
+                return new JAXWSBPNamespaceHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory, "http://cxf.apache.org/blueprint/jaxws");
     }
 
     @Override
     public void stop(BundleContext context) throws Exception {
+        // Nothing to do
     }
 
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/EndpointDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/EndpointDefinitionParser.java
similarity index 97%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/EndpointDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/EndpointDefinitionParser.java
index 8bcf1a333..d55697b89 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/EndpointDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/EndpointDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxws.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxws;
 
 import java.util.StringTokenizer;
 import java.util.UUID;
@@ -28,7 +28,7 @@ import org.w3c.dom.NamedNodeMap;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.Bus;
 import org.apache.cxf.common.util.StringUtils;
 import org.apache.cxf.helpers.DOMUtils;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/JAXWSBPNamespaceHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/JAXWSBPNamespaceHandler.java
similarity index 91%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/JAXWSBPNamespaceHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/JAXWSBPNamespaceHandler.java
index bc5792e21..68c03429c 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/JAXWSBPNamespaceHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/jaxws/JAXWSBPNamespaceHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxws.blueprint;
+package org.apache.camel.component.cxf.blueprint.jaxws;
 
 import java.net.URL;
 import java.util.Set;
@@ -25,9 +25,9 @@ import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.Namespaces;
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.frontend.blueprint.ClientProxyFactoryBeanDefinitionParser;
-import org.apache.camel.component.cxf.frontend.blueprint.ServerFactoryBeanDefinitionParser;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.frontend.ClientProxyFactoryBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.frontend.ServerFactoryBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.helpers.BaseNamespaceHandler;
 import org.apache.cxf.common.injection.NoJSR250Annotations;
 import org.apache.cxf.endpoint.Server;
 import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
@@ -44,6 +44,7 @@ public class JAXWSBPNamespaceHandler extends BaseNamespaceHandler {
     public JAXWSBPNamespaceHandler() {
     }
 
+    @Override
     public URL getSchemaLocation(String namespace) {
         if ("http://cxf.apache.org/blueprint/jaxws".equals(namespace)) {
             return getClass().getClassLoader().getResource("schemas/blueprint/jaxws.xsd");
@@ -51,7 +52,7 @@ public class JAXWSBPNamespaceHandler extends BaseNamespaceHandler {
         return super.findCoreSchemaLocation(namespace);
     }
 
-
+    @Override
     public Metadata parse(Element element, ParserContext context) {
         String s = element.getLocalName();
         if ("endpoint".equals(s)) {
@@ -66,10 +67,12 @@ public class JAXWSBPNamespaceHandler extends BaseNamespaceHandler {
         return null;
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata component, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/servlet/blueprint/CXFBlueprintServlet.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/servlet/CXFBlueprintServlet.java
similarity index 96%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/servlet/blueprint/CXFBlueprintServlet.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/servlet/CXFBlueprintServlet.java
index 07b0ac8ff..f33f5fc64 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/servlet/blueprint/CXFBlueprintServlet.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/servlet/CXFBlueprintServlet.java
@@ -15,9 +15,10 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.servlet.blueprint;
+package org.apache.camel.component.cxf.blueprint.servlet;
 
 import jakarta.servlet.ServletConfig;
+
 import org.apache.cxf.Bus;
 import org.apache.cxf.BusFactory;
 import org.apache.cxf.transport.servlet.CXFNonSpringServlet;
@@ -45,6 +46,7 @@ public class CXFBlueprintServlet extends CXFNonSpringServlet {
         }
     }
 
+    @Override
     public void destroyBus() {
         if (busCreated) {
             //if we created the Bus, we need to destroy it.  Otherwise, spring will handle it.
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HTTPTransportActivator.java
similarity index 56%
copy from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
copy to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HTTPTransportActivator.java
index d5456931d..86e7cd682 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HTTPTransportActivator.java
@@ -15,33 +15,30 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxws.blueprint;
+package org.apache.camel.component.cxf.blueprint.transport.http;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
-public class Activator implements BundleActivator {
+public class HTTPTransportActivator implements BundleActivator {
 
     @Override
-    public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+    public void start(final BundleContext context) throws Exception {
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
 
-                @Override
-                public Object createNamespaceHandler() {
-                    return new JAXWSBPNamespaceHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory, "http://cxf.apache.org/blueprint/jaxws");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
+            @Override
+            public Object createNamespaceHandler() {
+                return new HttpBPHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory,
+                "http://cxf.apache.org/transports/http/configuration");
     }
 
     @Override
     public void stop(BundleContext context) throws Exception {
+        // nothing to do
     }
-
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpBPHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpBPHandler.java
similarity index 90%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpBPHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpBPHandler.java
index fcf966016..609d288d9 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpBPHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpBPHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.transport.http.blueprint;
+package org.apache.camel.component.cxf.blueprint.transport.http;
 
 import java.net.URL;
 import java.util.Set;
@@ -25,7 +25,7 @@ import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.Namespaces;
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.helpers.BaseNamespaceHandler;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
 
@@ -35,6 +35,7 @@ public class HttpBPHandler extends BaseNamespaceHandler {
     public HttpBPHandler() {
     }
 
+    @Override
     public URL getSchemaLocation(String s) {
         if ("http://cxf.apache.org/transports/http/configuration".equals(s)) {
             return getClass().getClassLoader().
@@ -44,6 +45,7 @@ public class HttpBPHandler extends BaseNamespaceHandler {
     }
 
 
+    @Override
     public Metadata parse(Element element, ParserContext context) {
         String s = element.getLocalName();
 
@@ -56,11 +58,13 @@ public class HttpBPHandler extends BaseNamespaceHandler {
         return null;
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
 
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata component, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpConduitBPBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpConduitBPBeanDefinitionParser.java
similarity index 98%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpConduitBPBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpConduitBPBeanDefinitionParser.java
index 6826683a9..5933e7f71 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpConduitBPBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpConduitBPBeanDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.transport.http.blueprint;
+package org.apache.camel.component.cxf.blueprint.transport.http;
 
 import org.w3c.dom.Attr;
 import org.w3c.dom.Element;
@@ -24,7 +24,7 @@ import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.configuration.jsse.TLSClientParametersConfig;
 import org.apache.cxf.configuration.security.AuthorizationPolicy;
 import org.apache.cxf.configuration.security.CertificateConstraintsType;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpDestinationBPBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpDestinationBPBeanDefinitionParser.java
similarity index 95%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpDestinationBPBeanDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpDestinationBPBeanDefinitionParser.java
index e997a9750..c8577c079 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/transport/http/blueprint/HttpDestinationBPBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/transport/http/HttpDestinationBPBeanDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.transport.http.blueprint;
+package org.apache.camel.component.cxf.blueprint.transport.http;
 
 import javax.xml.namespace.QName;
 
@@ -23,7 +23,7 @@ import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.transport.http.AbstractHTTPDestination;
 import org.apache.cxf.transports.http.configuration.HTTPServerPolicy;
 import org.osgi.service.blueprint.reflect.BeanMetadata;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/addressing/Activator.java
similarity index 63%
copy from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
copy to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/addressing/Activator.java
index d5456931d..a024eba52 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/addressing/Activator.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxws.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.addressing;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -26,22 +26,20 @@ public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
 
-                @Override
-                public Object createNamespaceHandler() {
-                    return new JAXWSBPNamespaceHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory, "http://cxf.apache.org/blueprint/jaxws");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
+            @Override
+            public Object createNamespaceHandler() {
+                return new WsBPHandler();
+            }
+        };
+        NamespaceHandlerRegisterer.register(context, factory,
+                "http://cxf.apache.org/ws/addressing");
     }
 
     @Override
     public void stop(BundleContext context) throws Exception {
+        // nothing to do
     }
 
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/addressing/blueprint/WsBPHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/addressing/WsBPHandler.java
similarity index 90%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/addressing/blueprint/WsBPHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/addressing/WsBPHandler.java
index 32e501c16..b630d91f1 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/addressing/blueprint/WsBPHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/addressing/WsBPHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.ws.addressing.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.addressing;
 
 import java.net.URL;
 import java.util.Set;
@@ -25,13 +25,14 @@ import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.NamespaceHandler;
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.configuration.blueprint.SimpleBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.SimpleBPBeanDefinitionParser;
 import org.apache.cxf.ws.addressing.WSAddressingFeature;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
 
 public class WsBPHandler implements NamespaceHandler {
 
+    @Override
     public URL getSchemaLocation(String s) {
         if ("http://cxf.apache.org/ws/addressing".equals(s)) {
             return getClass().getClassLoader().getResource("schemas/ws-addr-conf.xsd");
@@ -40,15 +41,18 @@ public class WsBPHandler implements NamespaceHandler {
         return null;
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
 
+    @Override
     public Metadata parse(Element element, ParserContext context) {
         return new SimpleBPBeanDefinitionParser(WSAddressingFeature.class).parse(element, context);
     }
 
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata componentMetadata, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/Activator.java
similarity index 51%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/Activator.java
index d5456931d..1523d45b0 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/jaxws/blueprint/Activator.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/Activator.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.jaxws.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.policy;
 
-import org.apache.camel.component.cxf.bus.blueprint.BlueprintNameSpaceHandlerFactory;
-import org.apache.camel.component.cxf.bus.blueprint.NamespaceHandlerRegisterer;
+import org.apache.camel.component.cxf.blueprint.bus.BlueprintNameSpaceHandlerFactory;
+import org.apache.camel.component.cxf.blueprint.bus.NamespaceHandlerRegisterer;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 
@@ -26,22 +26,25 @@ public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        try {
-            BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
+        BlueprintNameSpaceHandlerFactory factory = new BlueprintNameSpaceHandlerFactory() {
 
-                @Override
-                public Object createNamespaceHandler() {
-                    return new JAXWSBPNamespaceHandler();
-                }
-            };
-            NamespaceHandlerRegisterer.register(context, factory, "http://cxf.apache.org/blueprint/jaxws");
-        } catch (NoClassDefFoundError error) {
-            // No Blueprint is available
-        }
+            @Override
+            public Object createNamespaceHandler() {
+                return new PolicyBPHandler();
+            }
+        };
+        NamespaceHandlerRegisterer
+                .register(context, factory, "http://cxf.apache.org/policy", "http://www.w3.org/ns/ws-policy",
+                        "http://www.w3.org/2006/07/ws-policy", "http://schemas.xmlsoap.org/ws/2004/09/policy",
+                        "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd",
+                        "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd",
+                        "http://www.w3.org/2000/09/xmldsig#",
+                        "http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702");
     }
 
     @Override
     public void stop(BundleContext context) throws Exception {
+        // nothing to do
     }
 
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/ExternalAttachmentProviderBPDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/ExternalAttachmentProviderBPDefinitionParser.java
similarity index 94%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/ExternalAttachmentProviderBPDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/ExternalAttachmentProviderBPDefinitionParser.java
index 9d6b96df3..aa5608619 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/ExternalAttachmentProviderBPDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/ExternalAttachmentProviderBPDefinitionParser.java
@@ -15,13 +15,13 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.ws.policy.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.policy;
 
 import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.ws.policy.attachment.external.ExternalAttachmentProvider;
 import org.osgi.service.blueprint.reflect.BeanProperty;
 import org.osgi.service.blueprint.reflect.Metadata;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyBPDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyBPDefinitionParser.java
similarity index 93%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyBPDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyBPDefinitionParser.java
index 4b3670ddd..ffab726de 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyBPDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyBPDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.ws.policy.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.policy;
 
 
 import java.util.UUID;
@@ -26,7 +26,7 @@ import org.w3c.dom.Element;
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
 import org.apache.aries.blueprint.mutable.MutablePassThroughMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.ws.policy.PolicyBean;
 import org.apache.cxf.ws.policy.PolicyConstants;
 import org.osgi.service.blueprint.reflect.Metadata;
@@ -35,7 +35,7 @@ public class PolicyBPDefinitionParser extends AbstractBPBeanDefinitionParser {
 
     public Metadata parse(Element element, ParserContext context) {
         MutablePassThroughMetadata factory = context.createMetadata(MutablePassThroughMetadata.class);
-        factory.setId(resolveId(element, context) + UUID.randomUUID().toString());
+        factory.setId(resolveId(element, context) + UUID.randomUUID());
 
         PolicyBean policyBean = new PolicyBean();
         policyBean.setElement(element);
@@ -55,12 +55,13 @@ public class PolicyBPDefinitionParser extends AbstractBPBeanDefinitionParser {
 
     public static class PassThroughCallable<T> implements Callable<T> {
 
-        private T value;
+        private final T value;
 
         public PassThroughCallable(T value) {
             this.value = value;
         }
 
+        @Override
         public T call() throws Exception {
             return value;
         }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyBPHandler.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyBPHandler.java
similarity index 93%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyBPHandler.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyBPHandler.java
index 159d2e269..dd97280c0 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyBPHandler.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyBPHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.ws.policy.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.policy;
 
 
 import java.net.URL;
@@ -25,12 +25,13 @@ import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.helpers.BaseNamespaceHandler;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
 
 public class PolicyBPHandler extends BaseNamespaceHandler {
 
+    @Override
     public URL getSchemaLocation(String s) {
         //Say yes to various schemas.
         String location = null;
@@ -57,11 +58,13 @@ public class PolicyBPHandler extends BaseNamespaceHandler {
         return super.findCoreSchemaLocation(s);
     }
 
+    @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return null;
+        return Set.of();
     }
 
+    @Override
     public Metadata parse(Element element, ParserContext context) {
 
         String s = element.getLocalName();
@@ -76,6 +79,7 @@ public class PolicyBPHandler extends BaseNamespaceHandler {
         return null;
     }
 
+    @Override
     public ComponentMetadata decorate(Node node, ComponentMetadata componentMetadata, ParserContext context) {
         return null;
     }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyEngineBPDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyEngineBPDefinitionParser.java
similarity index 95%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyEngineBPDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyEngineBPDefinitionParser.java
index e5e7221f9..61d27a03f 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyEngineBPDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyEngineBPDefinitionParser.java
@@ -15,13 +15,13 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.ws.policy.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.policy;
 
 import org.w3c.dom.Element;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.Bus;
 import org.apache.cxf.common.util.StringUtils;
 import org.apache.cxf.feature.AbstractFeature;
@@ -60,7 +60,7 @@ public class PolicyEngineBPDefinitionParser extends AbstractBPBeanDefinitionPars
 
     public static class PolicyEngineConfig extends AbstractFeature {
 
-        private PolicyEngineImpl engine;
+        private final PolicyEngineImpl engine;
 
         public PolicyEngineConfig(Bus bus) {
             engine = (PolicyEngineImpl) bus.getExtension(PolicyEngine.class);
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyFeatureBPDefinitionParser.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyFeatureBPDefinitionParser.java
similarity index 96%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyFeatureBPDefinitionParser.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyFeatureBPDefinitionParser.java
index fdd26770a..121daedd5 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/ws/policy/blueprint/PolicyFeatureBPDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/blueprint/ws/policy/PolicyFeatureBPDefinitionParser.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.ws.policy.blueprint;
+package org.apache.camel.component.cxf.blueprint.ws.policy;
 
 
 import java.util.List;
@@ -26,7 +26,7 @@ import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
 import org.apache.aries.blueprint.mutable.MutableCollectionMetadata;
 import org.apache.aries.blueprint.mutable.MutablePassThroughMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.helpers.DOMUtils;
 import org.apache.cxf.ws.policy.WSPolicyFeature;
 import org.osgi.service.blueprint.reflect.Metadata;
diff --git a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintNameSpaceHandlerFactory.java b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/CxfRsBlueprintEndpointFactoryBean.java
similarity index 65%
rename from components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintNameSpaceHandlerFactory.java
rename to components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/CxfRsBlueprintEndpointFactoryBean.java
index d106f2ba1..fdcf7978f 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/java/org/apache/camel/component/cxf/bus/blueprint/BlueprintNameSpaceHandlerFactory.java
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/java/org/apache/camel/component/cxf/jaxrs/blueprint/CxfRsBlueprintEndpointFactoryBean.java
@@ -15,15 +15,12 @@
  * limitations under the License.
  */
 
-package org.apache.camel.component.cxf.bus.blueprint;
+package org.apache.camel.component.cxf.jaxrs.blueprint;
 
-public interface BlueprintNameSpaceHandlerFactory {
-    /**
-     * Creates aries blueprint NamespaceHandler.
-     * The return type is untyped as aries blueprint is an
-     * optional import
-     *
-     * @return handler
-     */
-    Object createNamespaceHandler();
+/**
+ * Only used for backward compatibility until it is fixed in Camel.
+ * @deprecated use {@link org.apache.camel.component.cxf.blueprint.jaxrs.CxfRsBlueprintEndpointFactoryBean} instead
+ */
+@Deprecated(since = "4.8.2", forRemoval = true)
+public class CxfRsBlueprintEndpointFactoryBean extends org.apache.camel.component.cxf.blueprint.jaxrs.CxfRsBlueprintEndpointFactoryBean{
 }
diff --git a/components/camel-cxf/camel-cxf-all/src/main/resources/META-INF/blueprint.handlers b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/META-INF/blueprint.handlers
similarity index 92%
rename from components/camel-cxf/camel-cxf-all/src/main/resources/META-INF/blueprint.handlers
rename to components/camel-cxf/camel-cxf-blueprint/src/main/resources/META-INF/blueprint.handlers
index f7973d42e..f1c071fe3 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/resources/META-INF/blueprint.handlers
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/META-INF/blueprint.handlers
@@ -18,4 +18,4 @@
 #    under the License.
 #
 #
-org.apache.camel.component.cxf.helpers.CXFAPINamespaceHandler
+org.apache.camel.component.cxf.blueprint.helpers.CXFAPINamespaceHandler
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schema/blueprint/camel-cxf.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/camel-cxf.xsd
similarity index 100%
rename from components/camel-cxf/camel-cxf-blueprint/src/main/resources/schema/blueprint/camel-cxf.xsd
rename to components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/camel-cxf.xsd
diff --git a/components/camel-cxf/camel-cxf-all/src/main/resources/schemas/blueprint/core.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/cxf-core.xsd
similarity index 96%
rename from components/camel-cxf/camel-cxf-all/src/main/resources/schemas/blueprint/core.xsd
rename to components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/cxf-core.xsd
index d6fdad7e9..abf05290f 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/resources/schemas/blueprint/core.xsd
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/cxf-core.xsd
@@ -7,7 +7,9 @@
   to you under the Apache License, Version 2.0 (the
   "License"); you may not use this file except in compliance
   with the License. You may obtain a copy of the License at
+
   http://www.apache.org/licenses/LICENSE-2.0
+
   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -18,13 +20,14 @@
 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
             xmlns:beans="http://www.osgi.org/xmlns/blueprint/v1.0.0"
             xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:ptp="http://cxf.apache.org/configuration/parameterized-types"
 
             targetNamespace="http://cxf.apache.org/blueprint/core"
             elementFormDefault="qualified"
->
+            attributeFormDefault="unqualified"  >
 
-    <xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0" schemaLocation="https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"/>
+    <xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0" schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"/>
     <xsd:import namespace="http://cxf.apache.org/configuration/beans" schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
     <xsd:import namespace="http://cxf.apache.org/configuration/parameterized-types"
                 schemaLocation="http://cxf.apache.org/schemas/configuration/parameterized-types.xsd"/>
@@ -148,7 +151,7 @@
                     <xsd:documentation>
                         Unique identifier for the particular Bus instance.  Mostly used by the
                         JMX management and OSGi service registry to provide some level of
-                        persistent naming to the Bus instances.  The default is "cxf" + random number.
+                        persitent naming to the Bus instances.  The default is "cxf" + random number.
                     </xsd:documentation>
                 </xsd:annotation>
             </xsd:attribute>
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs-client.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs-client.xsd
new file mode 100644
index 000000000..7b077eb13
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs-client.xsd
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xsd:schema xmlns="http://cxf.apache.org/blueprint/jaxrs-client"
+            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            xmlns:beans="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+            xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            targetNamespace="http://cxf.apache.org/blueprint/jaxrs-client"
+            xmlns:tns="http://cxf.apache.org/blueprint/jaxrs-client"
+            xmlns:jaxrs-common="http://cxf.apache.org/blueprint/jaxrs"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"  >
+
+    <xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0" schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"/>
+    <xsd:import namespace="http://cxf.apache.org/configuration/beans" schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
+    <xsd:import namespace="http://cxf.apache.org/blueprint/jaxrs" schemaLocation="http://cxf.apache.org/schemas/jaxrs-common.xsd"/>
+    <xsd:element name="client">
+        <xsd:complexType>
+            <xsd:complexContent>
+                <xsd:extension base="beans:Tcomponent">
+                    <xsd:all>
+                        <xsd:element name="executor" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="features" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="binding" type="xsd:anyType" minOccurs="0" />
+                        <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="properties" type="beans:Tmap" minOccurs="0"/>
+                        <xsd:element name="providers" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="modelBeans" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="model" type="jaxrs-common:model" minOccurs="0"/>
+                        <xsd:element name="headers" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="schemaLocations" type="jaxrs-common:schemasType" minOccurs="0"/>
+                    </xsd:all>
+                    <!-- xsd:attributeGroup ref="cxf-beans:beanAttributes"/-->
+                    <xsd:attribute name="address" type="xsd:string" />
+                    <xsd:attribute name="serviceClass" type="xsd:string"/>
+                    <xsd:attribute name="inheritHeaders" type="xsd:boolean"/>
+                    <xsd:attribute name="bus" type="xsd:string" />
+                    <xsd:attribute name="transportId" type="xsd:string"/>
+                    <xsd:attribute name="bindingId" type="xsd:string" />
+                    <xsd:attribute name="modelRef" type="xsd:string" />
+                    <xsd:attribute name="username" type="xsd:string"/>
+                    <xsd:attribute name="password" type="xsd:string"/>
+                    <xsd:attribute name="serviceName" type="xsd:QName"/>
+                    <xsd:attribute name="threadSafe" type="xsd:boolean"/>
+                </xsd:extension>
+            </xsd:complexContent>
+        </xsd:complexType>
+    </xsd:element>
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs-common.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs-common.xsd
new file mode 100644
index 000000000..edcf1d6a0
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs-common.xsd
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xsd:schema xmlns="http://cxf.apache.org/blueprint/jaxrs"
+            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            targetNamespace="http://cxf.apache.org/blueprint/jaxrs"
+            xmlns:tns="http://cxf.apache.org/blueprint/jaxrs"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified">
+
+    <xsd:complexType name="schemasType">
+        <xsd:sequence>
+            <xsd:element name="schemaLocation" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:element name="model" type="tns:model"/>
+
+    <xsd:complexType name="model">
+        <xsd:sequence>
+            <xsd:element name="resource" minOccurs="0" maxOccurs="unbounded">
+                <xsd:complexType>
+                    <xsd:sequence>
+                        <xsd:element name="operation" minOccurs="0" maxOccurs="unbounded">
+                            <xsd:complexType>
+                                <xsd:sequence>
+                                    <xsd:element name="param" minOccurs="0" maxOccurs="unbounded">
+                                        <xsd:complexType>
+                                            <xsd:attribute name="name" type="xsd:string"/>
+                                            <xsd:attribute name="type">
+                                                <xsd:simpleType>
+                                                    <xsd:restriction base="xsd:string">
+                                                        <xsd:enumeration value="PATH"/>
+                                                        <xsd:enumeration value="QUERY"/>
+                                                        <xsd:enumeration value="MATRIX"/>
+                                                        <xsd:enumeration value="HEADER"/>
+                                                        <xsd:enumeration value="COOKIE"/>
+                                                        <xsd:enumeration value="FORM"/>
+                                                        <xsd:enumeration value="CONTEXT"/>
+                                                        <xsd:enumeration value="REQUEST_BODY"/>
+                                                    </xsd:restriction>
+                                                </xsd:simpleType>
+                                            </xsd:attribute>
+                                            <xsd:attribute name="defaultValue" type="xsd:string"/>
+                                            <xsd:attribute name="encoded" type="xsd:boolean"/>
+                                        </xsd:complexType>
+                                    </xsd:element>
+                                </xsd:sequence>
+                                <xsd:attribute name="name" type="xsd:string"/>
+                                <xsd:attribute name="path" type="xsd:string"/>
+                                <xsd:attribute name="verb" type="xsd:string"/>
+                                <xsd:attribute name="consumes" type="xsd:string"/>
+                                <xsd:attribute name="produces" type="xsd:string"/>
+                                <xsd:attribute name="oneway" type="xsd:boolean"/>
+                            </xsd:complexType>
+                        </xsd:element>
+                    </xsd:sequence>
+                    <xsd:attribute name="name" type="xsd:string"/>
+                    <xsd:attribute name="path" type="xsd:string"/>
+                    <xsd:attribute name="consumes" type="xsd:string"/>
+                    <xsd:attribute name="produces" type="xsd:string"/>
+                </xsd:complexType>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:string"/>
+    </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs.xsd
new file mode 100644
index 000000000..e86a3f7c8
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxrs.xsd
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xsd:schema xmlns="http://cxf.apache.org/blueprint/jaxrs"
+            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            xmlns:beans="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+            xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            targetNamespace="http://cxf.apache.org/blueprint/jaxrs"
+            xmlns:tns="http://cxf.apache.org/blueprint/jaxrs"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"  >
+
+    <xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0" schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"/>
+    <xsd:import namespace="http://cxf.apache.org/configuration/beans" schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
+    <xsd:include schemaLocation="jaxrs-common.xsd"/>
+
+    <xsd:element name="server">
+        <xsd:complexType>
+            <xsd:complexContent>
+                <xsd:extension base="beans:Tcomponent">
+                    <xsd:all>
+                        <xsd:element name="executor" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="features" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="binding" type="xsd:anyType" minOccurs="0" />
+                        <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="invoker" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="serviceFactories" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="properties" type="beans:Tmap" minOccurs="0"/>
+                        <xsd:element name="serviceBeans" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="resourceClasses" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="modelBeans" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="model" type="tns:model" minOccurs="0"/>
+                        <xsd:element name="providers" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="extensionMappings" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="languageMappings" type="xsd:anyType" minOccurs="0"/>
+                        <xsd:element name="schemaLocations" type="tns:schemasType" minOccurs="0"/>
+                        <xsd:element name="resourceComparator" type="xsd:anyType" minOccurs="0"/>
+                    </xsd:all>
+                    <!-- xsd:attributeGroup ref="cxf-beans:beanAttributes"/-->
+                    <xsd:attribute name="address" type="xsd:string" />
+                    <xsd:attribute name="bus" type="xsd:string" />
+                    <xsd:attribute name="serviceClass" type="xsd:string"/>
+                    <xsd:attribute name="transportId" type="xsd:string"/>
+                    <xsd:attribute name="modelRef" type="xsd:string" />
+                    <xsd:attribute name="bindingId" type="xsd:string" />
+                    <xsd:attribute name="staticSubresourceResolution" type="xsd:boolean"/>
+                    <xsd:attribute name="beanNames" type="xsd:string"/>
+                    <xsd:attribute name="serviceName" type="xsd:QName"/>
+                    <xsd:attribute name="docLocation" type="xsd:string"/>
+                    <xsd:attribute name="publishedEndpointUrl" type="xsd:string"/>
+                    <xsd:attribute name="publish" type="xsd:boolean"/>
+                </xsd:extension>
+            </xsd:complexContent>
+        </xsd:complexType>
+    </xsd:element>
+
+
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxws.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxws.xsd
new file mode 100644
index 000000000..ea3bba036
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/jaxws.xsd
@@ -0,0 +1,441 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xsd:schema xmlns="http://cxf.apache.org/blueprint/jaxws"
+            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            xmlns:beans="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+            xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            xmlns:pt="http://cxf.apache.org/configuration/parameterized-types"
+
+            targetNamespace="http://cxf.apache.org/blueprint/jaxws"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"  >
+
+    <xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0" schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"/>
+    <xsd:import namespace="http://cxf.apache.org/configuration/beans" schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
+    <xsd:import namespace="http://cxf.apache.org/configuration/parameterized-types"
+                schemaLocation="http://cxf.apache.org/schemas/configuration/parameterized-types.xsd"/>
+
+    <xsd:element name="endpoint">
+        <xsd:annotation>
+            <xsd:documentation>Configures a JAX-WS server. This element is associated with the org.apache.cxf.jaxws.EndpointImpl object.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexType>
+            <xsd:complexContent>
+                <xsd:extension base="beans:Tcomponent">
+                    <xsd:all>
+                        <xsd:element name="binding" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the message binding used by the endpoint. Message bindings are configured using implementations of the
+                                    org.apache.cxf.binding.BindingFactory interface. The SOAP binding is configured using the soap:soapBinding bean.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the data binding used by the endpoint. The class implementing the JAXB data binding is org.apache.cxf.jaxb.JAXBDataBinding.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="executor" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures a Java executor to handle the service.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="features" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of beans that configure advanced features like WS-RM.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="handlers" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of JAX-WS handlers to add to the endpoint's processing chain.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="implementor" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the bean implementing the service. If this child is used you should not use the implementor attribute.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process incoming requests.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process incoming fault messages.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="invoker" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies an implementation of the org.apache.cxf.service.Invoker interface to be used by the service. The Invoker
+                                    implementation controls how a service is invoked. For example, it controls if each request is handled by a new instance of the
+                                    service implementation or if state is preserved across invocations.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process outgoing responses.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process outgoing fault messages.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="properties" type="beans:Tmap" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a map of properties that are passed to the endpoint.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="schemaLocations" type="schemasType" minOccurs="0"/>
+                        <xsd:element name="serviceFactory" type="xsd:anyType" minOccurs="0"/>
+                    </xsd:all>
+                    <!-- xsd:attributeGroup ref="cxf-beans:beanAttributes"/-->
+                    <xsd:attribute name="address" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the HTTP address of the endpoint. This value will override the value specified in the services
+                                contract.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="bindingUri" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the ID of the data binding the service will use. For SOAP bindings the IDs are defined in the JAX-WS
+                                specification. For other data bindings, the ID is the namespace of the WSDL extensions used to configure the
+                                binding.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="bus" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the ID of the Spring bean configuring the bus managing the endpoint.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="implementor" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the class implementing the service. You can specify the implementation class using either the class
+                                name or an ID reference to a Spring bean configuring the implementation class. This class needs to be on the
+                                classpath.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="implementorClass" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the name of the class implementing the service. This attribute is useful when you specify the implementor
+                                with the ref bean which is wrapped by using Spring AOP.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="publish" type="pt:ParameterizedBoolean" default="true">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies if the service should be automatically published.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="publishedEndpointUrl" type="xsd:string"/>
+                    <xsd:attribute name="endpointName" type="xsd:QName">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the value of the service's WSDL port element's name attribute.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="serviceName" type="xsd:QName">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the value of the service's WSDL service element's name attribute.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="transportId" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the transportId that endpoint will use, it will override the transport which is defined in the wsdl.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="wsdlLocation" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the location of the endpoint's WSDL contract. The WSDL contract's location is relative to the folder
+                                from which the service is deployed.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                </xsd:extension>
+            </xsd:complexContent>
+        </xsd:complexType>
+    </xsd:element>
+
+    <xsd:element name="server">
+        <xsd:annotation>
+            <xsd:documentation>Configures a JAX-WS server. The element is associated with the org.apache.cxf.jaxws.support.JaxWsServerFactoryBean object.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexType>
+            <xsd:complexContent>
+                <xsd:extension base="beans:Tcomponent">
+                    <xsd:all>
+                        <xsd:element name="binding" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the message binding used by the endpoint. Message bindings are configured using implementations of the
+                                    org.apache.cxf.binding.BindingFactory interface. The SOAP binding is configured using the soap:soapBinding bean.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the data binding used by the endpoint. The class implementing the JAXB data binding is
+                                    org.apache.cxf.jaxb.JAXBDataBinding.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="executor" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures a Java executor to handle the service.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="features" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of beans that configure advanced features like WS-RM.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="handlers" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of JAX-WS handlers to add to the endpoint's processing chain.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process incoming requests.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process incoming fault messages.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="invoker" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies an implementation of the org.apache.cxf.service.Invoker interface to be used by the service. The Invoker
+                                    implementation controls how a service is invoked. For example, it controls if each request is handled by a new instance of the
+                                    service implementation or if state is preserved across invocations.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process outgoing responses.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process outgoing fault messages.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="properties" type="beans:Tmap" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a map of properties that are passed to the endpoint.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="schemaLocations" type="schemasType" minOccurs="0"/>
+                        <xsd:element name="serviceBean" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the bean implementing the service. If this child is used you should not use the serviceBean attribute.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="serviceFactory" type="xsd:anyType" minOccurs="0"/>
+                    </xsd:all>
+                    <!-- xsd:attributeGroup ref="cxf-beans:beanAttributes"/-->
+                    <xsd:attribute name="address" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the HTTP address of the endpoint. This value will override the value specified in the services
+                                contract.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="bindingId" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the ID of the data binding the service will use. For SOAP bindings the IDs are defined in the JAX-WS
+                                specification. For other data bindings, the ID is the namespace of the WSDL extensions used to configure the
+                                binding.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="bus" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the ID of the Spring bean configuring the bus managing the endpoint.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="serviceClass" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the name of the class implementing the service. This attribute is useful when you specify the implementor
+                                with the ref bean which is wrapped by using Spring AOP.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="serviceBean" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the class implementing the service. You can specify the implementation class using either the class
+                                name or an ID reference to a Spring bean configuring the implementation class. This class needs to be on the
+                                classpath.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="start" type="pt:ParameterizedBoolean" default="true">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies if the service should be automatically published.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="transportId" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the transportId that endpoint will use, it will override the transport which is defined in the wsdl.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="wsdlLocation" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the location of the endpoint's WSDL contract. The WSDL contract's location is relative to the folder
+                                from which the service is deployed.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="endpointName" type="xsd:QName">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the value of the service's WSDL port element's name attribute.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="serviceName" type="xsd:QName">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the value of the service's WSDL service element's name attribute.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                </xsd:extension>
+            </xsd:complexContent>
+        </xsd:complexType>
+    </xsd:element>
+
+    <xsd:element name="client">
+        <xsd:annotation>
+            <xsd:documentation>Configures a JAX-WS client.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexType>
+            <xsd:complexContent>
+                <xsd:extension base="beans:Tcomponent">
+                    <xsd:all>
+                        <xsd:element name="binding" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the message binding used by the endpoint. Message bindings are configured using implementations of the
+                                    org.apache.cxf.binding.BindingFactory interface. The SOAP binding is configured using the soap:soapBinding bean.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Configures the data binding used by the endpoint. The class implementing the JAXB data binding is org.apache.cxf.jaxb.JAXBDataBinding.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="features" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of beans that configure advanced features like WS-RM.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="handlers" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of JAX-WS handlers to add to the endpoint's processing chain.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process incoming responses.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process incoming fault messages.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process outgoing requests.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a list of interceptors to process outgoing fault messages.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="properties" type="beans:Tmap" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a map of properties that are passed to the endpoint.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="conduitSelector" type="xsd:anyType" minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>Specifies a org.apache.cxf.endpoint.ConduitSelector implementation. ConduitSelector implementations override the
+                                    strategy used to select the Conduit used to process outgoing messages.</xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                    </xsd:all>
+                    <!-- xsd:attributeGroup ref="cxf-beans:beanAttributes"/-->
+                    <xsd:attribute name="address" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the HTTP address of the endpoint on which the client makes requests. This value will override the value
+                                specified in the services contract.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="bindingId" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the ID of the data binding the client will use. For SOAP bindings the IDs are defined in the JAX-WS
+                                specification. For other data bindings, the ID is the namespace of the WSDL extensions used to configure the
+                                binding.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="bus" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the ID of the Spring bean configuring the bus managing the endpoint.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="endpointName" type="xsd:QName">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the value of the WSDL port element's name attribute for the service on which the client is making
+                                requests.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="password" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a password that is used for simple username/password authentication.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="serviceClass" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the name of the class implementing the client.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="serviceName" type="xsd:QName">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the value of the WSDL service element's name attribute for the service on which the client is making
+                                requests.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="username" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a password that is used for simple username/password authentication.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="transportId" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the transportId that endpoint will use, it will override the transport which is defined in the wsdl.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="wsdlLocation" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies the location of the endpoint's WSDL contract. The WSDL contract's location is relative to the folder
+                                from which the client is deployed.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                </xsd:extension>
+            </xsd:complexContent>
+        </xsd:complexType>
+    </xsd:element>
+
+    <xsd:complexType name="schemasType">
+        <xsd:sequence>
+            <xsd:element name="schemaLocation" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/simple.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/simple.xsd
new file mode 100644
index 000000000..914db8dc2
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/blueprint/simple.xsd
@@ -0,0 +1,288 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xsd:schema xmlns="http://cxf.apache.org/blueprint/simple"
+            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            xmlns:beans="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+            xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            targetNamespace="http://cxf.apache.org/blueprint/simple"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"  >
+
+    <xsd:import namespace="http://www.osgi.org/xmlns/blueprint/v1.0.0" schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"/>
+    <xsd:import namespace="http://cxf.apache.org/configuration/beans" schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
+
+    <xsd:element name="server" type="serverType">
+        <xsd:annotation>
+            <xsd:documentation>Configures a server implemented using the Simple front-end.</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="serverType">
+        <xsd:complexContent>
+            <xsd:extension base="beans:Tcomponent">
+                <xsd:all>
+                    <xsd:element name="binding" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Configures the message binding used by the endpoint. Message bindings are configured using implementations of the
+                                org.apache.cxf.binding.BindingFactory interface. The SOAP binding is configured using the soap:soapBinding bean.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Configures the data binding used by the endpoint.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="executor" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Configures a Java executor to handle the service.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="features" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of beans that configure advanced features.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process incoming requests.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process incoming fault messages.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="invoker" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies an implementation of the org.apache.cxf.service.Invoker interface to be used by the service. The Invoker
+                                implementation controls how a service is invoked. For example, it controls if each request is handled by a new instance of the
+                                service implementation or if state is preserved across invocations.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process outgoing responses.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process outgoing fault messages.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="properties" type="beans:Tmap" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a map of properties that are passed to the endpoint.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="schemaLocations" type="schemasType" minOccurs="0"/>
+                    <xsd:element name="serviceBean" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Configures the bean implementing the service. If this child is used you should not use the serviceBean attribute.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="serviceFactory" type="xsd:anyType" minOccurs="0"/>
+                </xsd:all>
+                <!--xsd:attributeGroup ref="cxf-beans:beanAttributes"/-->
+                <xsd:attribute name="address" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the HTTP address of the endpoint. This value will override the value specified in the services
+                            contract.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="bindingId" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the ID of the data binding the service will use. The ID is the namespace of the WSDL extensions used to configure the
+                            binding.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="bus" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the ID of the Spring bean configuring the bus managing the endpoint.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="serviceClass" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the name of the class implementing the service. This attribute is useful when you specify the implementor
+                            with the ref bean which is wrapped by using Spring AOP.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="serviceBean" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the class implementing the service. You can specify the implementation class using either the class
+                            name or an ID reference to a Spring bean configuring the implementation class. This class needs to be on the
+                            classpath.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="start" type="xsd:boolean" default="true">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies if the service should be automatically published.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="transportId" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the transportId that endpoint will use, it will override the transport which is defined in the wsdl.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="wsdlLocation" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the location of the endpoint's WSDL contract. The WSDL contract's location is relative to the folder
+                            from which the service is deployed.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="endpointName" type="xsd:QName">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the value of the service's WSDL port element's name attribute.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="serviceName" type="xsd:QName">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the value of the service's WSDL service element's name attribute.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:element name="client" type="clientType">
+        <xsd:annotation>
+            <xsd:documentation>Configures a client implemented using the Simple front-end.</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="clientType">
+        <xsd:complexContent>
+            <xsd:extension base="beans:Tcomponent">
+                <xsd:all>
+                    <xsd:element name="binding" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Configures the message binding used by the endpoint. Message bindings are configured using implementations of the
+                                org.apache.cxf.binding.BindingFactory interface. The SOAP binding is configured using the soap:soapBinding bean.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="conduitSelector" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a org.apache.cxf.endpoint.ConduitSelector implementation. ConduitSelector implementations override the
+                                strategy used to select the Conduit used to process outgoing messages.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Configures the data binding used by the endpoint.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="features" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of beans that configure advanced features like WS-RM.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process incoming responses.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process incoming fault messages.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process outgoing requests.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a list of interceptors to process outgoing fault messages.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="properties" type="beans:Tmap" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>Specifies a map of properties that are passed to the endpoint.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                </xsd:all>
+                <!-- xsd:attributeGroup ref="cxf-beans:beanAttributes"/-->
+                <xsd:attribute name="address" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the HTTP address of the endpoint on which the client makes requests. This value will override the value
+                            specified in the services contract.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="bindingId" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the ID of the data binding the client will use. The ID is the namespace of the WSDL extensions used to
+                            configure the binding.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="bus" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the ID of the Spring bean configuring the bus managing the endpoint.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="endpointName" type="xsd:QName">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the value of the WSDL port element's name attribute for the service on which the client is making
+                            requests.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="password" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies a password that is used for simple username/password authentication.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="serviceClass" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the name of the class implementing the client.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="serviceName" type="xsd:QName">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the value of the WSDL service element's name attribute for the service on which the client is making
+                            requests.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="username" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies a password that is used for simple username/password authentication.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="transportId" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the transportId that endpoint will use, it will override the transport which is defined in the wsdl.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="wsdlLocation" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>Specifies the location of the endpoint's WSDL contract. The WSDL contract's location is relative to the folder
+                            from which the client is deployed.</xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="schemasType">
+        <xsd:sequence>
+            <xsd:element name="schemaLocation" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-all/src/main/resources/schemas/configuration/blueprint/soap.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/blueprint/soap.xsd
similarity index 99%
rename from components/camel-cxf/camel-cxf-all/src/main/resources/schemas/configuration/blueprint/soap.xsd
rename to components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/blueprint/soap.xsd
index ae8d5d4ea..843280776 100644
--- a/components/camel-cxf/camel-cxf-all/src/main/resources/schemas/configuration/blueprint/soap.xsd
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/blueprint/soap.xsd
@@ -7,7 +7,9 @@
   to you under the Apache License, Version 2.0 (the
   "License"); you may not use this file except in compliance
   with the License. You may obtain a copy of the License at
+
   http://www.apache.org/licenses/LICENSE-2.0
+
   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -43,4 +45,4 @@
         </xsd:complexType>
     </xsd:element>
 
-</xsd:schema>
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/cxf-beans.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/cxf-beans.xsd
new file mode 100644
index 000000000..fdd11935f
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/cxf-beans.xsd
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+<xsd:schema
+        targetNamespace="http://cxf.apache.org/configuration/beans"
+        xmlns:tns="http://cxf.apache.org/configuration/beans"
+        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+        elementFormDefault="qualified"
+        attributeFormDefault="unqualified">
+
+
+    <xsd:attributeGroup name="beanAttributes">
+        <xsd:attribute name="name" type="xsd:string">
+            <xsd:annotation>
+                <xsd:documentation>
+                    A unique identifier for the bean. This can also be a list of identifiers.
+                    See documentation for attribute name in attribute group beanAttributes
+                    in http://www.springframework.org/schema/beans/spring-beans.xsd
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="abstract" type="xsd:boolean">
+            <xsd:annotation>
+                <xsd:documentation>
+                    Specifies if the bean is an abstract bean. Abstract beans act as parents for
+                    concrete bean definitions and are not instantiated. The default is "false".
+                    Setting this to "true" instructs the bean factory not to instantiate the bean.
+                    See documentation for attribute abstract in attribute group beanAttributes
+                    in http://www.springframework.org/schema/beans/spring-beans.xsd
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="depends-on" type="xsd:string">
+            <xsd:annotation>
+                <xsd:documentation>
+                    A list of beans that the bean depends on being instantiated before it
+                    can be instantiated.
+                    See documentation for attribute depends-on in attribute group beanAttributes
+                    in http://www.springframework.org/schema/beans/spring-beans.xsd
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="createdFromAPI" type="xsd:boolean">
+            <xsd:annotation>
+                <xsd:documentation>
+                    Specifies that the user created that bean using CXF APIs like
+                    Endpoint.publish or Service.getPort.
+                    The default is "false".
+                    Setting this to "true" does the following: Changes the internal name of the
+                    bean by appending either ".jaxws-client" or ".jaxws-endpoint" to the bean's
+                    id. Makes the bean abstract.
+                    See documentation for attribute abstract in attribute group beanAttributes
+                    in http://www.springframework.org/schema/beans/spring-beans.xsd
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+    </xsd:attributeGroup>
+
+    <xsd:complexType name="ClassOrBeanType">
+        <xsd:attribute name="class" type="xsd:string"/>
+        <xsd:attribute name="bean"  type="xsd:string"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="identifiedType" abstract="true">
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/http-conf.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/http-conf.xsd
new file mode 100644
index 000000000..6475b506a
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/http-conf.xsd
@@ -0,0 +1,160 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+<xs:schema targetNamespace="http://cxf.apache.org/transports/http/configuration"
+           xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+           xmlns:http-conf="http://cxf.apache.org/transports/http/configuration"
+           xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+           xmlns:sec="http://cxf.apache.org/configuration/security"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+           elementFormDefault="qualified"
+           attributeFormDefault="unqualified"
+           xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+           jaxb:version="3.0">
+
+    <xs:include schemaLocation="../wsdl/http-conf.xsd"/>
+    <xs:import namespace="http://schemas.xmlsoap.org/wsdl/"
+               schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd"/>
+    <xs:import namespace="http://cxf.apache.org/configuration/security"
+               schemaLocation="http://cxf.apache.org/schemas/configuration/security.xsd"/>
+    <xs:import namespace="http://cxf.apache.org/configuration/beans"
+               schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
+
+    <!-- Conduit Specific Items -->
+
+    <xs:element name="authorization"       type="sec:AuthorizationPolicy"/>
+    <xs:element name="proxyAuthorization"  type="sec:ProxyAuthorizationPolicy"/>
+    <xs:element name="tlsClientParameters" type="sec:TLSClientParametersType"/>
+    <xs:element name="trustDecider"        type="cxf-beans:ClassOrBeanType"/>
+    <xs:element name="authSupplier"        type="cxf-beans:ClassOrBeanType"/>
+
+    <xs:element name="conduit">
+        <xs:complexType>
+            <xs:complexContent>
+                <xs:extension base="cxf-beans:identifiedType">
+                    <xs:all>
+                        <xs:element ref="http-conf:client" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the parameters that configure
+                                    a client-side HTTP connection.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element ref="http-conf:authorization" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the parameters that configure
+                                    the Basic Authentication that will be preemptively
+                                    used. Note, supplying a Basic Auth Supplier object
+                                    is the preferred approach.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element ref="http-conf:proxyAuthorization" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the parameters that configure
+                                    the Basic Authentication for an outgoing HTTP
+                                    Proxy Server.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element ref="http-conf:tlsClientParameters" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the parameters that configure
+                                    the underlying SSL/TLS JSSE client-side
+                                    of an HTTPS connection.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element ref="http-conf:authSupplier"
+                                    minOccurs="0" maxOccurs="1">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the bean reference or class name
+                                    of an object that supplies Auth information
+                                    both preemptively and in response to a 401 HTTP
+                                    Challenge. This class must extend the abstract class
+                                    org.apache.cxf.transport.http.HttpBasicAuthSupplier.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element ref="http-conf:trustDecider"
+                                    minOccurs="0" maxOccurs="1">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the bean reference or class name
+                                    of an object that checks the Http(s)URLConnection
+                                    that will establish trust for a connection with an
+                                    HTTP(S) server, before any information is sent to the
+                                    server, namely Basic Auth information. This class
+                                    must extend the abstract class
+                                    org.apache.cxf.transport.http.MessageTrustDecider.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                    </xs:all>
+                    <xs:attributeGroup ref="cxf-beans:beanAttributes"/>
+                </xs:extension>
+            </xs:complexContent>
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="destination">
+        <xs:complexType>
+            <xs:complexContent>
+                <xs:extension base="cxf-beans:identifiedType">
+                    <xs:all>
+                        <xs:element ref="http-conf:server" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the parameters that configure
+                                    a server-side HTTP connection.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element ref="http-conf:contextMatchStrategy" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Holds the parameters that configure
+                                    the context match strategy for processing an HTTP request.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element ref="http-conf:fixedParameterOrder" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>
+                                    Signifies whether the parameter order of
+                                    an HTTP request handled by this destination is fixed.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                    </xs:all>
+                    <xs:attributeGroup ref="cxf-beans:beanAttributes"/>
+                </xs:extension>
+            </xs:complexContent>
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/parameterized-types.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/parameterized-types.xsd
new file mode 100644
index 000000000..d49208929
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/parameterized-types.xsd
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xs:schema targetNamespace="http://cxf.apache.org/configuration/parameterized-types"
+		   xmlns:tns="http://cxf.apache.org/configuration/parameterized-types"
+		   xmlns:xs="http://www.w3.org/2001/XMLSchema"
+		   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+		   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+		   elementFormDefault="qualified"
+		   attributeFormDefault="unqualified"
+		   xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+		   jaxb:version="3.0">
+
+
+	<xs:simpleType name="ParameterizedValue">
+		<xs:restriction base="xs:string">
+			<xs:pattern value="[$#](\{.*\}|\(.*\)|\[.*\])"/>
+		</xs:restriction>
+	</xs:simpleType>
+
+	<xs:simpleType name="ParameterizedUShort">
+		<xs:annotation>
+			<xs:appinfo>
+				<jaxb:class ref="java.lang.Integer"/>
+			</xs:appinfo>
+		</xs:annotation>
+		<xs:union memberTypes="xs:unsignedShort tns:ParameterizedValue"/>
+	</xs:simpleType>
+	<xs:simpleType name="ParameterizedInt">
+		<xs:annotation>
+			<xs:appinfo>
+				<jaxb:class ref="java.lang.Integer"/>
+			</xs:appinfo>
+		</xs:annotation>
+		<xs:union memberTypes="xs:int tns:ParameterizedValue"/>
+	</xs:simpleType>
+	<xs:simpleType name="ParameterizedUInt">
+		<xs:annotation>
+			<xs:appinfo>
+				<jaxb:class ref="java.lang.Long"/>
+			</xs:appinfo>
+		</xs:annotation>
+		<xs:union memberTypes="xs:unsignedInt tns:ParameterizedValue"/>
+	</xs:simpleType>
+	<xs:simpleType name="ParameterizedLong">
+		<xs:annotation>
+			<xs:appinfo>
+				<jaxb:class ref="java.lang.Long"/>
+			</xs:appinfo>
+		</xs:annotation>
+		<xs:union memberTypes="xs:long tns:ParameterizedValue"/>
+	</xs:simpleType>
+	<xs:simpleType name="ParameterizedBoolean">
+		<xs:annotation>
+			<xs:appinfo>
+				<jaxb:class ref="java.lang.Boolean"/>
+			</xs:appinfo>
+		</xs:annotation>
+		<xs:union memberTypes="xs:boolean tns:ParameterizedValue"/>
+	</xs:simpleType>
+
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/security.xjb b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/security.xjb
new file mode 100644
index 000000000..884c3ddf7
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/security.xjb
@@ -0,0 +1,27 @@
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="3.0" 
+  xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb" 
+  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+  xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc">
+    <jaxb:bindings schemaLocation="security.xsd" node="/xs:schema">
+        <jaxb:globalBindings generateIsSetMethod="true"/>
+    </jaxb:bindings>
+    
+</jaxb:bindings>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/security.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/security.xsd
new file mode 100644
index 000000000..1da2f7ff0
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/configuration/security.xsd
@@ -0,0 +1,668 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+<xs:schema targetNamespace="http://cxf.apache.org/configuration/security"
+           xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           elementFormDefault="qualified"
+           attributeFormDefault="unqualified"
+           xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+           xmlns:tns="http://cxf.apache.org/configuration/security"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xmlns:pt="http://cxf.apache.org/configuration/parameterized-types"
+           jaxb:version="3.0">
+
+    <xs:import namespace="http://cxf.apache.org/configuration/parameterized-types"
+               schemaLocation="http://cxf.apache.org/schemas/configuration/parameterized-types.xsd"/>
+
+    <xs:complexType name="AuthorizationPolicy">
+        <xs:annotation>
+            <xs:documentation>
+                This structure holds parameters that may govern authentication
+                that use a User Password strategy.
+            </xs:documentation>
+        </xs:annotation>
+
+        <xs:sequence>
+            <xs:element name="UserName" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        User Name for  server BASIC authentication login
+                        (some servers require users to authenticate with the server -- see also Password, AuthorizationType, and Authorization)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+
+            <xs:element name="Password" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        Password for server BASIC authentication login
+                        (some servers require users to authenticate with the server -- see also UserName, AuthorizationType, and Authorization)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+
+            <xs:element name="AuthorizationType" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        Type of authentication to use with server, if not using
+                        username and password based "BASIC" authentication.
+                        If username and password are used, this does not need to be set.
+                        (some servers require users to authenticate with the server -- see also UserName, Password, and Authorization)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+
+            <xs:element name="Authorization" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        Actual authentication data for server, if not using
+                        username and password based "BASIC" authentication
+                        If username and password are used, this does not need to be set.
+                        (some servers require users to authenticate with the server -- see also UserName, Password, and AuthorizationType)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+    <xs:element name="authorization" type="tns:AuthorizationPolicy"/>
+
+    <xs:complexType name="ProxyAuthorizationPolicy">
+        <xs:complexContent>
+            <xs:extension base="tns:AuthorizationPolicy"/>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="FiltersType">
+        <xs:sequence>
+            <xs:element name="include" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+            <xs:element name="exclude" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="ClientAuthentication">
+        <xs:attribute name="want"     type="pt:ParameterizedBoolean">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies if client authentication should be requested.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="required" type="pt:ParameterizedBoolean">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies if client authentication should be required.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+    </xs:complexType>
+
+    <xs:complexType name="KeyStoreType">
+        <xs:annotation>
+            <xs:documentation>
+                A KeyStoreType represents the information needed to load a collection
+                of key and certificate material from a desired location.
+                The "url", "file", and "resource" attributes are intended to be
+                mutually exclusive, though this assumption is not encoded in schema.
+                The precedence order observed by the runtime is
+                1) "file", 2) "resource", and 3) "url".
+            </xs:documentation>
+        </xs:annotation>
+        <xs:attribute name="type"     type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the type of the keystore.
+                    It is highly correlated to the provider. Most common examples
+                    are "jks" "pkcs12".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="password" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifes the integrity password for the keystore.
+                    This is not the password that unlock keys within the keystore.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="provider" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the keystore implementation provider.
+                    Most common examples are "SUN".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="url"      type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the URL location of the keystore.
+                    This element should be a properly accessible URL, such as
+                    "http://..." "file:///...", etc. Only one attribute of
+                    "url", "file", or "resource" is allowed.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="file"     type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the File location of the keystore.
+                    This element should be a properly accessible file from the
+                    working directory. Only one attribute of
+                    "url", "file", or "resource" is allowed.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="resource" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the Resource location of the keystore.
+                    This element should be a properly accessible on the classpath.
+                    Only one attribute of
+                    "url", "file", or "resource" is allowed.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+    </xs:complexType>
+
+    <xs:complexType name="CertStoreType">
+        <xs:annotation>
+            <xs:documentation>
+                A CertStoreType represents a catenated sequence of X.509 certificates,
+                in PEM or DER format.
+                The "url", "file", and "resource" attributes are intended to be
+                mutually exclusive, though this assumption is not encoded in schema.
+                The precedence order observed by the runtime is
+                1) "file", 2) "resource", and 3) "url".
+            </xs:documentation>
+        </xs:annotation>
+        <xs:attribute name="type"     type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the type of the certstore.
+                    It is highly correlated to the provider. Most common examples
+                    are "jks" "pkcs12".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="file"     type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the File location of the certificate store.
+                    This element should be a properly accessible file from the
+                    working directory. Only one attribute of
+                    "url", "file", or "resource" is allowed.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="resource" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the Resource location of the certificate store.
+                    This element should be a properly accessible on the classpath.
+                    Only one attribute of
+                    "url", "file", or "resource" is allowed.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="url"      type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies the URL location of the certificate store.
+                    This element should be a properly accessible URL, such as
+                    "http://..." "file:///...", etc. Only one attribute of
+                    "url", "file", or "resource" is allowed.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+    </xs:complexType>
+
+    <xs:complexType name="KeyManagersType">
+        <xs:annotation>
+            <xs:documentation>
+                This structure specifies the JSSE based KeyManagers for a single
+                Keystore.
+            </xs:documentation>
+        </xs:annotation>
+
+        <xs:sequence>
+            <xs:element name="keyStore" type="tns:KeyStoreType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element specified the Keystore for these JSSE KeyManagers.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+        <xs:attribute name="keyPassword" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the password that unlocks the keys
+                    within the keystore.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="keyPasswordCallbackHandler" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the name of the class implementing
+                    password callback handler to unlock the keys withing the keystore.
+                    Alternative to keyPassword attribute.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="provider" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the KeyManagers provider name.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="factoryAlgorithm"  type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the algorithm the KeyManagers Factory
+                    will use in creating the KeyManagers from the KeyStore. Most
+                    common examples are "PKIX".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="ref" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the reference to the KeyManagers bean. This
+                    attribute allows the KeyManagers instance to be constructed by other
+                    means and referenced from this object.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+    </xs:complexType>
+
+    <xs:complexType name="TrustManagersType">
+        <xs:annotation>
+            <xs:documentation>
+                This structure contains the specification of JSSE TrustManagers for
+                a single Keystore used for trusted certificates.
+            </xs:documentation>
+        </xs:annotation>
+        <xs:choice>
+            <xs:element name="keyStore" type="tns:KeyStoreType"
+                        minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the KeyStore used as a trust
+                        store.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="certStore" type="tns:CertStoreType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the CertStore used as a trust store.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:choice>
+        <xs:attribute name="provider" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the KeyManagers provider name.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="factoryAlgorithm"  type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the algorithm the KeyManagers Factory
+                    will use in creating the KeyManagers from the KeyStore. Most
+                    common examples are "PKIX".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="ref" type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the reference to the TrustManagers bean. This
+                    attribute allows the TrustManagers instance to be constructed by other
+                    means and referenced from this object.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+    </xs:complexType>
+
+    <xs:complexType name="CipherSuites">
+        <xs:annotation>
+            <xs:documentation>
+                This structure holds a list of ciphersuite names that are to be
+                supported. Note: that does not mean that they will be available.
+                That depends on the JSSE and Crypto providers.
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="cipherSuite" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="ExcludeProtocols">
+        <xs:annotation>
+            <xs:documentation>
+                This structure holds a list of protocols that are to be excluded.
+                If this structure is not defined then SSLv3 is excluded by default
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="excludeProtocol" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="IncludeProtocols">
+        <xs:annotation>
+            <xs:documentation>
+                This structure holds a list of protocols that are to be included.
+                Sometimes we want to include more protocols than the secure socket protocol, for example
+                "SSLv2Hello".
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="includeProtocol" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="SecureRandomParameters">
+        <xs:annotation>
+            <xs:documentation>
+                This structure holds the parameters for the Secure Random Number
+                generator used in the JSSE.
+            </xs:documentation>
+        </xs:annotation>
+        <xs:attribute name="algorithm"/>
+        <xs:attribute name="provider"/>
+    </xs:complexType>
+
+    <xs:complexType name="CertificateConstraintsType">
+        <xs:annotation>
+            <xs:documentation>
+                This structure holds a list of regular expressions that corresponds to a sequence of
+                Certificate Constraints on either the Subject or Issuer DN.
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="SubjectDNConstraints" type="tns:DNConstraintsType" minOccurs="0"/>
+            <xs:element name="IssuerDNConstraints" type="tns:DNConstraintsType" minOccurs="0"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="DNConstraintsType">
+        <xs:annotation>
+            <xs:documentation>
+                This structure holds a list of regular expressions that corresponds to a sequence of
+                Certificate Constraints. The optional combinator attribute refers to whether ALL or
+                ANY of these regular expressions must be satisfied.
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:choice>
+                <xs:element name="RegularExpression" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+            </xs:choice>
+        </xs:sequence>
+        <xs:attribute name="combinator" type="tns:CombinatorType" default="ALL"/>
+    </xs:complexType>
+
+    <xs:simpleType name="CombinatorType">
+        <xs:annotation>
+            <xs:documentation>
+                This type refers to whether ALL or ANY of the DNConstraintsType regular expressions
+                must be satisfied.
+            </xs:documentation>
+        </xs:annotation>
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="ANY"/>
+            <xs:enumeration value="ALL"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <!-- Although there are common elements of TLSClientParametersType
+      ** and TLSServerParametersType they are listed separate so we
+      ** can use the xs:all element.
+      -->
+    <xs:complexType name="TLSClientParametersType">
+        <xs:all>
+            <xs:element name="keyManagers" type="tns:KeyManagersType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the KeyManagers specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="trustManagers" type="tns:TrustManagersType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the TrustManagers specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="cipherSuites" type="tns:CipherSuites" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the the CipherSuites that will be supported.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="cipherSuitesFilter" type="tns:FiltersType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the filters of the supported CipherSuites
+                        that will be supported and used if available.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="secureRandomParameters"
+                        type="tns:SecureRandomParameters" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains SecureRandom specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="certConstraints" type="tns:CertificateConstraintsType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the Certificate Constraints specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="certAlias" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the Certificate Alias.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:all>
+        <xs:attribute name="useHttpsURLConnectionDefaultSslSocketFactory" type="pt:ParameterizedBoolean" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies if HttpsURLConnection.defaultSslSocketFactory
+                    should be used to create https connections. If 'true', 'jsseProvider',
+                    'secureSocketProtocol', 'trustManagers', 'keyManagers', 'secureRandom',
+                    'cipherSuites' and 'cipherSuitesFilter' are ignored.
+                    Since 2.2.7.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="useHttpsURLConnectionDefaultHostnameVerifier" type="pt:ParameterizedBoolean" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies if HttpsURLConnection.defaultHostnameVerifier
+                    should be used to create https connections. If 'true', 'disableCNCheck'
+                    is ignored.
+                    Since 2.2.7.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="disableCNCheck" type="pt:ParameterizedBoolean" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies if JSSE should omit checking if the
+                    host name specified in the URL matches that of the Common Name
+                    (CN) on the server's certificate.  Default is false; this attribute
+                    should not be set to true during production use.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="enableRevocation" type="pt:ParameterizedBoolean" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies whether to enable revocation when checking the server certificate.
+                    The default is false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="jsseProvider"          type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the JSSE provider name.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="secureSocketProtocol"  type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the Protocol Name. Most common
+                    example is "SSL", "TLS" or "TLSv1".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="sslCacheTimeout" type="xs:int">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the JDK SSL session cache timeout
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+    </xs:complexType>
+
+    <xs:complexType name="TLSServerParametersType">
+        <xs:all>
+            <xs:element name="keyManagers" type="tns:KeyManagersType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the KeyManagers specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="trustManagers" type="tns:TrustManagersType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the TrustManagers specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="cipherSuites" type="tns:CipherSuites" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the the CipherSuites that will be supported.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="cipherSuitesFilter" type="tns:FiltersType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the filters of the supported CipherSuites
+                        that will be supported and used if available.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="excludeProtocols" type="tns:ExcludeProtocols" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the the Protocols that will be excluded
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="includeProtocols" type="tns:IncludeProtocols" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the the Protocols that will be included
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="secureRandomParameters"
+                        type="tns:SecureRandomParameters" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains SecureRandom specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="clientAuthentication"
+                        type="tns:ClientAuthentication" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains Client Authentication specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="certConstraints" type="tns:CertificateConstraintsType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the Certificate Constraints specification.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="certAlias" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        This element contains the Certificate Alias.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:all>
+        <xs:attribute name="jsseProvider"          type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the JSSE provider name.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="secureSocketProtocol"  type="xs:string">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute contains the Protocol Name. Most common
+                    example is "SSL", "TLS" or "TLSv1".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="enableRevocation" type="pt:ParameterizedBoolean" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    This attribute specifies whether to enable revocation when checking the client certificate,
+                    if client authentication is enabled. The default is false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="sniHostCheck" type="pt:ParameterizedBoolean" default="true">
+            <xs:annotation>
+                <xs:documentation>
+                    If the SNI host name must match.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+    </xs:complexType>
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/oasis-200401-wss-wssecurity-secext-1.0.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/oasis-200401-wss-wssecurity-secext-1.0.xsd
new file mode 100644
index 000000000..13dc24c64
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/oasis-200401-wss-wssecurity-secext-1.0.xsd
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. [...]
+OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+Copyright © OASIS Open 2002-2004. All Rights Reserved.
+This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself does not be modified in any way, such as by removing the copyright notice [...]
+The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
+This document and the information contained herein is provided on an “AS IS” basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+-->
+<xsd:schema targetNamespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSche [...]
+    <xsd:import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"/>
+    <xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
+
+    <xsd:complexType name="AttributedString">
+        <xsd:annotation>
+            <xsd:documentation>This type represents an element with arbitrary attributes.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute ref="wsu:Id"/>
+                <xsd:anyAttribute namespace="##other" processContents="lax"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    <xsd:complexType name="PasswordString">
+        <xsd:annotation>
+            <xsd:documentation>This type is used for password elements per Section 4.1.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="wsse:AttributedString">
+                <xsd:attribute name="Type" type="xsd:anyURI"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    <xsd:complexType name="EncodedString">
+        <xsd:annotation>
+            <xsd:documentation>This type is used for elements containing stringified binary data.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="wsse:AttributedString">
+                <xsd:attribute name="EncodingType" type="xsd:anyURI"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    <xsd:complexType name="UsernameTokenType">
+        <xsd:annotation>
+            <xsd:documentation>This type represents a username token per Section 4.1</xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="Username" type="wsse:AttributedString"/>
+            <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+        <xsd:attribute ref="wsu:Id"/>
+        <xsd:anyAttribute namespace="##other" processContents="lax"/>
+    </xsd:complexType>
+    <xsd:complexType name="BinarySecurityTokenType">
+        <xsd:annotation>
+            <xsd:documentation>A security token that is encoded in binary</xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="wsse:EncodedString">
+                <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    <xsd:complexType name="KeyIdentifierType">
+        <xsd:annotation>
+            <xsd:documentation>A security token key identifier</xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="wsse:EncodedString">
+                <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    <xsd:simpleType name="tUsage">
+        <xsd:annotation>
+            <xsd:documentation>Typedef to allow a list of usages (as URIs).</xsd:documentation>
+        </xsd:annotation>
+        <xsd:list itemType="xsd:anyURI"/>
+    </xsd:simpleType>
+    <xsd:attribute name="Usage" type="tUsage">
+        <xsd:annotation>
+            <xsd:documentation>This global attribute is used to indicate the usage of a referenced or indicated token within the containing context</xsd:documentation>
+        </xsd:annotation>
+    </xsd:attribute>
+    <xsd:complexType name="ReferenceType">
+        <xsd:annotation>
+            <xsd:documentation>This type represents a reference to an external security token.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="URI" type="xsd:anyURI"/>
+        <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+        <xsd:anyAttribute namespace="##other" processContents="lax"/>
+    </xsd:complexType>
+    <xsd:complexType name="EmbeddedType">
+        <xsd:annotation>
+            <xsd:documentation>This type represents a reference to an embedded security token.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:choice minOccurs="0" maxOccurs="unbounded">
+            <xsd:any processContents="lax"/>
+        </xsd:choice>
+        <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+        <xsd:anyAttribute namespace="##other" processContents="lax"/>
+    </xsd:complexType>
+    <xsd:complexType name="SecurityTokenReferenceType">
+        <xsd:annotation>
+            <xsd:documentation>This type is used reference a security token.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:choice minOccurs="0" maxOccurs="unbounded">
+            <xsd:any processContents="lax"/>
+        </xsd:choice>
+        <xsd:attribute ref="wsu:Id"/>
+        <xsd:attribute ref="wsse:Usage"/>
+        <xsd:anyAttribute namespace="##other" processContents="lax"/>
+    </xsd:complexType>
+    <xsd:complexType name="SecurityHeaderType">
+        <xsd:annotation>
+            <xsd:documentation>This complexType defines header block to use for security-relevant data directed at a specific SOAP actor.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>The use of "any" is to allow extensibility and different forms of security data.</xsd:documentation>
+                </xsd:annotation>
+            </xsd:any>
+        </xsd:sequence>
+        <xsd:anyAttribute namespace="##other" processContents="lax"/>
+    </xsd:complexType>
+    <xsd:complexType name="TransformationParametersType">
+        <xsd:annotation>
+            <xsd:documentation>This complexType defines a container for elements to be specified from any namespace as properties/parameters of a DSIG transformation.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>The use of "any" is to allow extensibility from any namespace.</xsd:documentation>
+                </xsd:annotation>
+            </xsd:any>
+        </xsd:sequence>
+        <xsd:anyAttribute namespace="##other" processContents="lax"/>
+    </xsd:complexType>
+    <xsd:element name="UsernameToken" type="wsse:UsernameTokenType">
+        <xsd:annotation>
+            <xsd:documentation>This element defines the wsse:UsernameToken element per Section 4.1.</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="BinarySecurityToken" type="wsse:BinarySecurityTokenType">
+        <xsd:annotation>
+            <xsd:documentation>This element defines the wsse:BinarySecurityToken element per Section 4.2.</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="Reference" type="wsse:ReferenceType">
+        <xsd:annotation>
+            <xsd:documentation>This element defines a security token reference</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="Embedded" type="wsse:EmbeddedType">
+        <xsd:annotation>
+            <xsd:documentation>This element defines a security token embedded reference</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="KeyIdentifier" type="wsse:KeyIdentifierType">
+        <xsd:annotation>
+            <xsd:documentation>This element defines a key identifier reference</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="SecurityTokenReference" type="wsse:SecurityTokenReferenceType">
+        <xsd:annotation>
+            <xsd:documentation>This element defines the wsse:SecurityTokenReference per Section 4.3.</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="Security" type="wsse:SecurityHeaderType">
+        <xsd:annotation>
+            <xsd:documentation>This element defines the wsse:Security SOAP header element per Section 4.</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="TransformationParameters" type="wsse:TransformationParametersType">
+        <xsd:annotation>
+            <xsd:documentation>This element contains properties for transformations from any namespace, including DSIG.</xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="Password" type="wsse:PasswordString"/>
+    <xsd:element name="Nonce" type="wsse:EncodedString"/>
+    <xsd:simpleType name="FaultcodeEnum">
+        <xsd:restriction base="xsd:QName">
+            <xsd:enumeration value="wsse:UnsupportedSecurityToken"/>
+            <xsd:enumeration value="wsse:UnsupportedAlgorithm"/>
+            <xsd:enumeration value="wsse:InvalidSecurity"/>
+            <xsd:enumeration value="wsse:InvalidSecurityToken"/>
+            <xsd:enumeration value="wsse:FailedAuthentication"/>
+            <xsd:enumeration value="wsse:FailedCheck"/>
+            <xsd:enumeration value="wsse:SecurityTokenUnavailable"/>
+        </xsd:restriction>
+    </xsd:simpleType>
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/oasis-200401-wss-wssecurity-utility-1.0.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/oasis-200401-wss-wssecurity-utility-1.0.xsd
new file mode 100644
index 000000000..a5b2a24d2
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/oasis-200401-wss-wssecurity-utility-1.0.xsd
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. [...]
+OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+Copyright © OASIS Open 2002-2004. All Rights Reserved.
+This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself does not be modified in any way, such as by removing the copyright notice [...]
+The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
+This document and the information contained herein is provided on an “AS IS” basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+-->
+<xsd:schema targetNamespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+
+
+
+            xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+            elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.1">
+    <!-- // Fault Codes /////////////////////////////////////////// -->
+    <xsd:simpleType name="tTimestampFault">
+        <xsd:annotation>
+            <xsd:documentation>
+                This type defines the fault code value for Timestamp message expiration.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:restriction base="xsd:QName">
+            <xsd:enumeration value="wsu:MessageExpired"/>
+        </xsd:restriction>
+    </xsd:simpleType>
+    <!-- // Global attributes //////////////////////////////////// -->
+    <xsd:attribute name="Id" type="xsd:ID">
+        <xsd:annotation>
+            <xsd:documentation>
+                This global attribute supports annotating arbitrary elements with an ID.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:attribute>
+    <xsd:attributeGroup name="commonAtts">
+        <xsd:annotation>
+            <xsd:documentation>
+                Convenience attribute group used to simplify this schema.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute ref="wsu:Id" use="optional"/>
+        <xsd:anyAttribute namespace="##other" processContents="lax"/>
+    </xsd:attributeGroup>
+    <!-- // Utility types //////////////////////////////////////// -->
+    <xsd:complexType name="AttributedDateTime">
+        <xsd:annotation>
+            <xsd:documentation>
+                This type is for elements whose [children] is a psuedo-dateTime and can have arbitrary attributes.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attributeGroup ref="wsu:commonAtts"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    <xsd:complexType name="AttributedURI">
+        <xsd:annotation>
+            <xsd:documentation>
+                This type is for elements whose [children] is an anyURI and can have arbitrary attributes.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:anyURI">
+                <xsd:attributeGroup ref="wsu:commonAtts"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    <!-- // Timestamp header components /////////////////////////// -->
+    <xsd:complexType name="TimestampType">
+        <xsd:annotation>
+            <xsd:documentation>
+                This complex type ties together the timestamp related elements into a composite type.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element ref="wsu:Created" minOccurs="0"/>
+            <xsd:element ref="wsu:Expires" minOccurs="0"/>
+            <xsd:choice minOccurs="0" maxOccurs="unbounded">
+                <xsd:any namespace="##other" processContents="lax"/>
+            </xsd:choice>
+        </xsd:sequence>
+        <xsd:attributeGroup ref="wsu:commonAtts"/>
+    </xsd:complexType>
+    <xsd:element name="Timestamp" type="wsu:TimestampType">
+        <xsd:annotation>
+            <xsd:documentation>
+                This element allows Timestamps to be applied anywhere element wildcards are present,
+                including as a SOAP header.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <!-- global element decls to allow individual elements to appear anywhere -->
+    <xsd:element name="Expires" type="wsu:AttributedDateTime">
+        <xsd:annotation>
+            <xsd:documentation>
+                This element allows an expiration time to be applied anywhere element wildcards are present.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="Created" type="wsu:AttributedDateTime">
+        <xsd:annotation>
+            <xsd:documentation>
+                This element allows a creation time to be applied anywhere element wildcards are present.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/policy.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/policy.xsd
new file mode 100644
index 000000000..8bafed693
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/policy.xsd
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            targetNamespace="http://cxf.apache.org/policy"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"  >
+
+    <xsd:import namespace="http://cxf.apache.org/configuration/beans" schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
+
+    <xsd:annotation>
+        <xsd:documentation>
+            This schema defines features and beans to configure the CXF Policy Framework.
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:element name="policies">
+        <xsd:annotation>
+            <xsd:documentation>
+                The policies feature enables and configures the CXF Policy Framework.
+                It can have any number of Policy or PolicyReference child elements.
+                When this feature applies to a client or service endpoint, these policies
+                are merged with other policies attached to policy scope that contain
+                the policy subject to obtain the effective policy for the subject.
+                When this feature is applied to the bus, its policies are relevant to all
+                client and server endpoints created on that bus.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexType>
+            <xsd:sequence>
+                <xsd:element name="alternativeSelector" type="xsd:anyType" minOccurs="0">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The alternative selector to use when choosing one of multiple policy alternatives.
+                            The child element of this element must be a bean whose bean class implements
+                            org.apache.cxf.ws.policy.selector.AlternativeSelector, or a reference to such a bean.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+            </xsd:sequence>
+            <xsd:attribute name="ignoreUnknownAssertions" type="xsd:boolean" default="false"/>
+            <xsd:attribute name="namespace" type="xsd:string"/>
+            <xsd:attribute name="id" type="xsd:string"/>
+            <xsd:attribute name="enabled" type="xsd:boolean"/>
+        </xsd:complexType>
+    </xsd:element>
+
+    <xsd:element name="engine">
+        <xsd:complexType>
+            <xsd:all>
+                <xsd:element name="alternativeSelector" type="xsd:anyType" minOccurs="0">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The alternative selector to use when choosing one of multiple policy alternatives.
+                            The child element of this element must be a bean whose bean class implements
+                            org.apache.cxf.ws.policy.selector.AlternativeSelector, or a reference to such a bean.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:all>
+            <xsd:attributeGroup ref="cxf-beans:beanAttributes"/>
+            <xsd:attribute name="enabled" type="xsd:boolean" default="false">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The state of the policy engine.
+                        If enabled, the policy interceptors will be added to the interceptor
+                        chains of all messages and faults, and in turn may add feature specific
+                        interceptors depending on the capabilities and requirements of the
+                        underlying message exchange.
+                        By default, the engine is turned off.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:attribute>
+            <xsd:attribute name="ignoreUnknownAssertions" type="xsd:boolean" default="false">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Indicates how to handle assertions for which no AssertionBuilders are registered.
+                        By default, the policy engine throws an Exception upon encoutering an
+                        unknown assertion type. If this attribute is set to true, it will only
+                        log a warning.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:attribute>
+            <xsd:attribute name="bus" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The name of the bus to apply these settings
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:attribute>
+        </xsd:complexType>
+    </xsd:element>
+
+    <xsd:element name="externalAttachment">
+        <xsd:complexType>
+            <xsd:complexContent>
+                <xsd:extension base="cxf-beans:identifiedType">
+                    <xsd:attributeGroup ref="cxf-beans:beanAttributes"/>
+                    <xsd:attribute name="location" type="xsd:string" default="http://www.w3.org/2006/07/ws-policy">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                Location of the external attachment document.
+                                It must be specified in form of a Spring Resource type property, e.g.
+                                classpath:etc/policies.xml or file:/x1/resources/polcies.xml.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                </xsd:extension>
+            </xsd:complexContent>
+        </xsd:complexType>
+    </xsd:element>
+
+</xsd:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-addr-conf.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-addr-conf.xsd
new file mode 100644
index 000000000..e5190f508
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-addr-conf.xsd
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+<xs:schema
+        targetNamespace="http://cxf.apache.org/ws/addressing"
+        xmlns:tns="http://cxf.apache.org/ws/addressing"
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+        elementFormDefault="qualified"
+        attributeFormDefault="unqualified" >
+
+    <xs:element name="addressing">
+        <xs:complexType>
+            <xs:attribute name="allowDuplicates" type="xs:boolean"/>
+            <xs:attribute name="usingAddressingAdvisory" type="xs:boolean"/>
+            <xs:attribute name="addressingRequired" type="xs:boolean"/>
+            <xs:attribute name="messageIdCache" type="xs:string"/>
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200409.xjb b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200409.xjb
new file mode 100644
index 000000000..f8d17f492
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200409.xjb
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="3.0"
+  xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  jaxb:extensionBindingPrefixes="xjc">
+    <jaxb:bindings schemaLocation="ws-policy-200409.xsd" node="/xs:schema">
+        <jaxb:schemaBindings>
+            <jaxb:package name="org.apache.cxf.ws.policy.v200409"/>
+        </jaxb:schemaBindings>
+    </jaxb:bindings>
+</jaxb:bindings>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200409.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200409.xsd
new file mode 100644
index 000000000..26a16015b
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200409.xsd
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+(c) 2001-2006 BEA Systems Inc., International Business Machines Corporation, Microsoft Corporation, Inc., SAP AG, Sonic Software, and VeriSign, Inc. All rights reserved.
+
+Permission to copy and display the WS-Policy Specification (the "Specification", which includes WSDL and schema documents), in any medium without fee or royalty is hereby granted, provided that you include the following on ALL copies of the WS-Policy Specification, that you make:
+
+1.	A link or URL to the WS-Policy Specification at one of the Authors' websites
+2.	The copyright notice as shown in the WS-Policy Specification.
+
+BEA Systems, IBM, Microsoft, SAP, Sonic Software, and VeriSign (collectively, the "Authors") each agree to grant you a license, under royalty-free and otherwise reasonable, non-discriminatory terms and conditions, to their respective essential patent claims that they deem necessary to implement the WS-Policy Specification.
+
+THE WS-POLICY SPECIFICATION IS PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE WS-POLICY SPECIFICATION ARE SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+
+THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO ANY USE OR DISTRIBUTION OF THE WS-POLICY SPECIFICATION.
+
+The name and trademarks of the Authors may NOT be used in any manner, including advertising or publicity pertaining to the WS-Policy Specification or its contents without specific, written prior permission. Title to copyright in the WS-Policy Specification will at all times remain with the Authors.
+
+No other rights are granted by implication, estoppel or otherwise.
+-->
+<xs:schema
+        targetNamespace="http://schemas.xmlsoap.org/ws/2004/09/policy"
+        xmlns:tns="http://schemas.xmlsoap.org/ws/2004/09/policy"
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+        xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
+        xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+        elementFormDefault="qualified"
+        blockDefault="#all" >
+
+    <xs:import
+            namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
+            schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" />
+
+    <xs:import
+            namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+            schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" />
+
+    <!-- ////////// WS-Policy ////////// -->
+
+    <xs:element name="Policy" >
+        <xs:complexType>
+            <xs:complexContent>
+                <xs:extension base="tns:OperatorContentType" >
+                    <xs:attribute name="Name" type="xs:anyURI" />
+                    <xs:attribute ref="wsu:Id" />
+                    <xs:anyAttribute namespace="##any" processContents="lax" />
+                </xs:extension>
+            </xs:complexContent>
+        </xs:complexType>
+    </xs:element>
+    <xs:element name="All" type="tns:OperatorContentType" />
+    <xs:element name="ExactlyOne" type="tns:OperatorContentType" />
+
+    <xs:complexType name="OperatorContentType" >
+        <xs:sequence>
+            <xs:choice minOccurs="0" maxOccurs="unbounded" >
+                <xs:element ref="tns:Policy" />
+                <xs:element ref="tns:All" />
+                <xs:element ref="tns:ExactlyOne" />
+                <xs:element ref="tns:PolicyReference" />
+                <xs:any namespace="##other" processContents="lax" />
+            </xs:choice>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:element name="PolicyReference" >
+        <xs:complexType>
+            <xs:attribute name="URI" type="xs:anyURI" use="required" />
+            <xs:attribute name="Digest" type="xs:base64Binary" />
+            <xs:attribute name="DigestAlgorithm"
+                          type="xs:anyURI"
+                          default="http://schemas.xmlsoap.org/ws/2004/09/policy/Sha1Exc"
+            />
+            <xs:anyAttribute namespace="##any" processContents="lax" />
+        </xs:complexType>
+    </xs:element>
+
+    <xs:attribute name="Optional" type="xs:boolean" default="false" />
+
+    <!-- ////////// WS-PolicyAttachment ////////// -->
+
+    <xs:attribute name="PolicyURIs" >
+        <xs:simpleType>
+            <xs:list itemType="xs:anyURI" />
+        </xs:simpleType>
+    </xs:attribute>
+
+    <xs:element name="PolicyAttachment" >
+        <xs:complexType>
+            <xs:sequence>
+                <xs:element ref="tns:AppliesTo" />
+                <xs:choice maxOccurs="unbounded" >
+                    <xs:element ref="tns:Policy" />
+                    <xs:element ref="tns:PolicyReference" />
+                </xs:choice>
+                <!-- omitted only because it causes the content model to be non-determistic
+                <xs:element ref="wsse:Security" minOccurs="0" />
+        -->
+                <xs:any namespace="##other"
+                        processContents="lax"
+                        minOccurs="0"
+                        maxOccurs="unbounded" />
+            </xs:sequence>
+            <xs:anyAttribute namespace="##any" processContents="lax" />
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="AppliesTo" >
+        <xs:complexType>
+            <xs:sequence>
+                <xs:any namespace="##any"
+                        processContents="lax"
+                        maxOccurs="unbounded" />
+            </xs:sequence>
+            <xs:anyAttribute namespace="##any" processContents="lax" />
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200607.xjb b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200607.xjb
new file mode 100644
index 000000000..960a95f88
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200607.xjb
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="3.0"
+  xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  jaxb:extensionBindingPrefixes="xjc">
+    <jaxb:bindings schemaLocation="ws-policy-200607.xsd" node="/xs:schema">
+        <jaxb:schemaBindings>
+            <jaxb:package name="org.apache.cxf.ws.policy.v200607"/>
+        </jaxb:schemaBindings>
+    </jaxb:bindings>
+</jaxb:bindings>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200607.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200607.xsd
new file mode 100644
index 000000000..74153ea80
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200607.xsd
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    W3C XML Schema defined in the Web Services Policy 1.5
+    Framework specification
+
+    http://www.w3.org/TR/ws-policy-framework
+
+   Copyright © 2006 World Wide Web Consortium,
+
+   (Massachusetts Institute of Technology, European Research Consortium for
+   Informatics and Mathematics, Keio University). All Rights Reserved. This
+   work is distributed under the W3C® Software License [1] in the hope that
+   it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+   [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+   $Id: ws-policy.xsd,v 1.1 2006/12/18 06:30:01 fsasaki Exp $
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.w3.org/2006/07/ws-policy" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" targetNamespace="http://www.w3.org/2006/07/ws-policy" blockDefault="#all" elementFormDefault="qualified">
+
+    <xs:import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"/>
+
+    <xs:import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"/>
+
+    <!-- Constructs from the Web Services Policy 1.5 Framework -->
+
+    <xs:element name="Policy">
+        <xs:complexType>
+
+            <xs:complexContent>
+                <xs:extension base="tns:OperatorContentType">
+                    <xs:attribute name="Name" type="xs:anyURI"/>
+                    <xs:anyAttribute namespace="##any" processContents="lax"/>
+                </xs:extension>
+            </xs:complexContent>
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="All" type="tns:OperatorContentType"/>
+    <xs:element name="ExactlyOne" type="tns:OperatorContentType"/>
+
+    <xs:complexType name="OperatorContentType">
+        <xs:sequence>
+            <xs:choice minOccurs="0" maxOccurs="unbounded">
+                <xs:element ref="tns:Policy"/>
+                <xs:element ref="tns:All"/>
+                <xs:element ref="tns:ExactlyOne"/>
+
+                <xs:element ref="tns:PolicyReference"/>
+                <xs:any namespace="##other" processContents="lax"/>
+            </xs:choice>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:element name="PolicyReference">
+        <xs:complexType>
+            <xs:sequence>
+                <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+            </xs:sequence>
+            <xs:attribute name="URI" type="xs:anyURI" use="required"/>
+
+            <xs:attribute name="Digest" type="xs:base64Binary"/>
+            <xs:attribute name="DigestAlgorithm" type="xs:anyURI" default="http://www.w3.org/2006/07/ws-policy/Sha1Exc"/>
+            <xs:anyAttribute namespace="##any" processContents="lax"/>
+        </xs:complexType>
+    </xs:element>
+
+    <xs:attribute name="Optional" type="xs:boolean" default="false"/>
+    <xs:attribute name="Ignorable" type="xs:boolean" default="false"/>
+
+    <!-- Constructs from the Web Services Policy 1.5 Attachment -->
+
+    <xs:attribute name="PolicyURIs">
+        <xs:simpleType>
+            <xs:list itemType="xs:anyURI"/>
+        </xs:simpleType>
+    </xs:attribute>
+
+    <xs:element name="PolicyAttachment">
+        <xs:complexType>
+            <xs:sequence>
+
+                <xs:element ref="tns:AppliesTo"/>
+                <xs:choice maxOccurs="unbounded">
+                    <xs:element ref="tns:Policy"/>
+                    <xs:element ref="tns:PolicyReference"/>
+                </xs:choice>
+                <!-- omitted only because it causes the content model to be non-determistic
+                <xs:element ref="wsse:Security" minOccurs="0" />
+        -->
+                <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+            </xs:sequence>
+            <xs:anyAttribute namespace="##any" processContents="lax"/>
+
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="AppliesTo">
+        <xs:complexType>
+            <xs:sequence>
+                <xs:any namespace="##any" processContents="lax" maxOccurs="unbounded"/>
+            </xs:sequence>
+            <xs:anyAttribute namespace="##any" processContents="lax"/>
+
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="URI">
+        <xs:complexType>
+            <xs:simpleContent>
+                <xs:extension base="xs:anyURI">
+                    <xs:anyAttribute namespace="##any" processContents="lax"/>
+                </xs:extension>
+            </xs:simpleContent>
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200702.xjb b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200702.xjb
new file mode 100644
index 000000000..117c626e8
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200702.xjb
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="3.0"
+  xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  jaxb:extensionBindingPrefixes="xjc">
+    <jaxb:bindings schemaLocation="ws-policy-200702.xsd" node="/xs:schema">
+        <jaxb:schemaBindings>
+            <jaxb:package name="org.apache.cxf.ws.policy.v200702"/>
+        </jaxb:schemaBindings>
+    </jaxb:bindings>
+</jaxb:bindings>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200702.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200702.xsd
new file mode 100644
index 000000000..24808bd7a
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-policy-200702.xsd
@@ -0,0 +1,137 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!--
+
+    W3C XML Schema defined in the Web Services Policy 1.5
+    Framework specification
+
+    http://www.w3.org/TR/ws-policy-framework
+
+   Copyright © 2006 World Wide Web Consortium,
+
+   (Massachusetts Institute of Technology, European Research Consortium for
+   Informatics and Mathematics, Keio University). All Rights Reserved. This
+   work is distributed under the W3C® Software License [1] in the hope that
+   it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+   [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+   $Id: ws-policy.xsd,v 1.2 2007/02/14 16:38:37 fsasaki Exp $
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:tns="http://www.w3.org/ns/ws-policy"
+           xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
+           xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+           targetNamespace="http://www.w3.org/ns/ws-policy" blockDefault="#all"
+           elementFormDefault="qualified">
+
+    <xs:import
+            namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
+            schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" />
+
+    <xs:import
+            namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+            schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" />
+
+    <!-- Constructs from the Web Services Policy 1.5 Framework -->
+
+    <xs:element name="Policy" >
+        <xs:complexType>
+
+            <xs:complexContent>
+                <xs:extension base="tns:OperatorContentType" >
+                    <xs:attribute name="Name" type="xs:anyURI" />
+                    <xs:anyAttribute namespace="##any" processContents="lax" />
+                </xs:extension>
+            </xs:complexContent>
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="All" type="tns:OperatorContentType" />
+    <xs:element name="ExactlyOne" type="tns:OperatorContentType" />
+
+    <xs:complexType name="OperatorContentType" >
+        <xs:sequence>
+            <xs:choice minOccurs="0" maxOccurs="unbounded" >
+                <xs:element ref="tns:Policy" />
+                <xs:element ref="tns:All" />
+                <xs:element ref="tns:ExactlyOne" />
+
+                <xs:element ref="tns:PolicyReference" />
+                <xs:any namespace="##other" processContents="lax" />
+            </xs:choice>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:element name="PolicyReference" >
+        <xs:complexType>
+            <xs:sequence>
+                <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+            </xs:sequence>
+            <xs:attribute name="URI" type="xs:anyURI" use="required" />
+
+            <xs:attribute name="Digest" type="xs:base64Binary" />
+            <xs:attribute name="DigestAlgorithm"
+                          type="xs:anyURI"
+                          default="http://www.w3.org/ns/ws-policy/Sha1Exc"
+            />
+            <xs:anyAttribute namespace="##any" processContents="lax" />
+        </xs:complexType>
+    </xs:element>
+
+    <xs:attribute name="Optional" type="xs:boolean" default="false" />
+    <xs:attribute name="Ignorable" type="xs:boolean" default="false" />
+
+    <!-- Constructs from the Web Services Policy 1.5 Attachment -->
+
+    <xs:attribute name="PolicyURIs" >
+        <xs:simpleType>
+            <xs:list itemType="xs:anyURI" />
+        </xs:simpleType>
+    </xs:attribute>
+
+    <xs:element name="PolicyAttachment" >
+        <xs:complexType>
+            <xs:sequence>
+
+                <xs:element ref="tns:AppliesTo" />
+                <xs:choice maxOccurs="unbounded" >
+                    <xs:element ref="tns:Policy" />
+                    <xs:element ref="tns:PolicyReference" />
+                </xs:choice>
+                <!-- omitted only because it causes the content model to be non-determistic
+                <xs:element ref="wsse:Security" minOccurs="0" />
+        -->
+                <xs:any namespace="##other"
+                        processContents="lax"
+                        minOccurs="0"
+                        maxOccurs="unbounded" />
+            </xs:sequence>
+            <xs:anyAttribute namespace="##any" processContents="lax" />
+
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="AppliesTo" >
+        <xs:complexType>
+            <xs:sequence>
+                <xs:any namespace="##any"
+                        processContents="lax"
+                        maxOccurs="unbounded" />
+            </xs:sequence>
+            <xs:anyAttribute namespace="##any" processContents="lax" />
+
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="URI">
+        <xs:complexType>
+            <xs:simpleContent>
+                <xs:extension base="xs:anyURI">
+                    <xs:anyAttribute namespace="##any" processContents="lax" />
+                </xs:extension>
+            </xs:simpleContent>
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-securitypolicy-1.2.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-securitypolicy-1.2.xsd
new file mode 100644
index 000000000..8d61d6d2d
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/ws-securitypolicy-1.2.xsd
@@ -0,0 +1,1205 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the
+implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available;
+neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS
+specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made
+available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users
+of this specification, can be obtained from the OASIS Executive Director.
+OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may
+cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+Copyright © OASIS Open 2002-2007. All Rights Reserved.
+This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist
+in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the
+above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself does not be modified
+in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications,
+in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate
+it into languages other than English.
+The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
+This document and the information contained herein is provided on an AS IS basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+-->
+<xs:schema
+        targetNamespace='http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702'
+        xmlns:tns='http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702'
+        xmlns:wsa="http://www.w3.org/2005/08/addressing"
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+        elementFormDefault="qualified"
+        blockDefault="#all" >
+
+    <xs:import namespace="http://www.w3.org/2005/08/addressing"
+               schemaLocation="http://www.w3.org/2006/03/addressing/ws-addr.xsd" />
+
+    <!--
+      4. Protection Assertions
+      -->
+    <xs:element name="SignedParts" type="tns:SePartsType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                4.1.1 SignedParts Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="EncryptedParts" type="tns:SePartsType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                4.2.1 EncryptedParts Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="SePartsType">
+        <xs:sequence>
+            <xs:element name="Body" type="tns:EmptyType" minOccurs="0" />
+            <xs:element name="Header" type="tns:HeaderType" minOccurs="0" maxOccurs="unbounded" />
+            <xs:element name="Attachments" type="tns:EmptyType" minOccurs="0" />
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax"/>
+        </xs:sequence>
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+    <xs:complexType name="EmptyType" />
+    <xs:complexType name="HeaderType" >
+        <xs:attribute name="Name" type="xs:QName" use="optional" />
+        <xs:attribute name="Namespace" type="xs:anyURI" use="required" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+
+    <xs:element name="SignedElements" type="tns:SerElementsType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en" >
+                4.1.2 SignedElements Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="EncryptedElements" type="tns:SerElementsType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                4.2.2 EncryptedElements Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequiredElements" type="tns:SerElementsType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en" >
+                4.3.1 RequiredElements Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="SerElementsType">
+        <xs:sequence>
+            <xs:element name="XPath" type="xs:string" minOccurs="1" maxOccurs="unbounded" />
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax"/>
+        </xs:sequence>
+        <xs:attribute name="XPathVersion" type="xs:anyURI" use="optional" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+
+    <!--
+      5. Token Assertions
+      -->
+    <xs:attribute name="IncludeToken" type="tns:IncludeTokenOpenType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.1 Token Inclusion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:attribute>
+    <xs:simpleType name="IncludeTokenOpenType">
+        <xs:union memberTypes="tns:IncludeTokenType xs:anyURI" />
+    </xs:simpleType>
+    <xs:simpleType name="IncludeTokenType">
+        <xs:restriction base="xs:anyURI" >
+            <xs:enumeration value="http://docs.oasis-open.org/ws-sx/ws-trust/200702/ws-securitypolicy/IncludeToken/Never" />
+            <xs:enumeration value="http://docs.oasis-open.org/ws-sx/ws-trust/200702/ws-securitypolicy/IncludeToken/Once" />
+            <xs:enumeration value="http://docs.oasis-open.org/ws-sx/ws-trust/200702/ws-securitypolicy/IncludeToken/AlwaysToRecipient" />
+            <xs:enumeration value="http://docs.oasis-open.org/ws-sx/ws-trust/200702/ws-securitypolicy/IncludeToken/AlwaysToInitiator" />
+            <xs:enumeration value="http://docs.oasis-open.org/ws-sx/ws-trust/200702/ws-securitypolicy/IncludeToken/Always" />
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:element name="UsernameToken" type="tns:TokenAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en" >
+                5.4.1 UsernameToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="TokenAssertionType">
+        <xs:sequence>
+            <xs:choice minOccurs="0">
+                <xs:element name="Issuer" type="wsa:EndpointReferenceType" />
+                <xs:element name="IssuerName" type="xs:anyURI" />
+            </xs:choice>
+            <!--
+                  Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+                  <xs:element ref="wsp:Policy" minOccurs="0" />
+                  -->
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax"/>
+        </xs:sequence>
+        <xs:attribute ref="tns:IncludeToken" use="optional" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+
+    <xs:element name="NoPassword" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.1 UsernameToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="HashPassword" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.1 UsernameToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssUsernameToken10" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.1 UsernameToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssUsernameToken11" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.1 UsernameToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- RequireDerivedKeys defined below. -->
+    <!-- RequireImpliedDerivedKeys defined below. -->
+    <!-- RequireExplicitDerivedKeys defined below. -->
+
+    <xs:complexType name="QNameAssertionType">
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+
+    <xs:element name="IssuedToken" type="tns:IssuedTokenType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.2 IssuedToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="IssuedTokenType">
+        <xs:sequence>
+            <xs:choice minOccurs="0">
+                <xs:element name="Issuer" type="wsa:EndpointReferenceType" />
+                <xs:element name="IssuerName" type="xs:anyURI" />
+            </xs:choice>
+            <xs:element name="RequestSecurityTokenTemplate" type="tns:RequestSecurityTokenTemplateType" />
+            <!--
+                  Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+                  <xs:element ref="wsp:Policy" minOccurs="0" />
+                  -->
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
+        </xs:sequence>
+        <xs:attribute ref="tns:IncludeToken" use="optional" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+    <xs:complexType name="RequestSecurityTokenTemplateType">
+        <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
+        </xs:sequence>
+        <xs:attribute name="TrustVersion" type="xs:anyURI" use="optional" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+
+    <xs:element name="RequireDerivedKeys" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.2 IssuedToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireImpliedDerivedKeys" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.2 IssuedToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireExplicitDerivedKeys" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.2 IssuedToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireExternalReference" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.2 IssuedToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireInternalReference" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.2 IssuedToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="X509Token" type="tns:TokenAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- RequireDerivedKeys defined above. -->
+    <!-- RequireImpliedDerivedKeys defined above. -->
+    <!-- RequireExplicitDerivedKeys defined above. -->
+
+    <xs:element name="RequireKeyIdentifierReference" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireIssuerSerialReference" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireEmbeddedTokenReference" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireThumbprintReference" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssX509V3Token10" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssX509Pkcs7Token10" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssX509PkiPathV1Token10" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssX509V1Token11" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssX509V3Token11" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssX509Pkcs7Token11" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssX509PkiPathV1Token11" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.3 X509Token Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="KerberosToken" type="tns:TokenAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.4 KerberosToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- RequireDerivedKeys defined above. -->
+    <!-- RequireImpliedDerivedKeys defined above. -->
+    <!-- RequireExplicitDerivedKeys defined above. -->
+    <!-- RequireKeyIdentifierReference defined above. -->
+
+    <xs:element name="WssKerberosV5ApReqToken11" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.4 KerberosToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssGssKerberosV5ApReqToken11" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.4 KerberosToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="SpnegoContextToken" type="tns:SpnegoContextTokenType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en" >
+                5.4.5 SpnegoContextToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="SpnegoContextTokenType">
+        <xs:sequence>
+            <xs:choice minOccurs="0">
+                <xs:element name="Issuer" type="wsa:EndpointReferenceType" />
+                <xs:element name="IssuerName" type="xs:anyURI" />
+            </xs:choice>
+            <!--
+                  Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+                  <xs:element ref="wsp:Policy" minOccurs="0" />
+                  -->
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
+        </xs:sequence>
+        <xs:attribute ref="tns:IncludeToken" use="optional" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+    <!-- RequireDerivedKeys defined above. -->
+    <!-- RequireImpliedDerivedKeys defined above. -->
+    <!-- RequireExplicitDerivedKeys defined above. -->
+    <xs:element name="MustNotSendCancel" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.5 SpnegoContextToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustNotSendAmend" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.5 SpnegoContextToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustNotSendRenew" type="tns:QNameAssertionType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.5 SpnegoContextToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="SecurityContextToken" type="tns:TokenAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.6 SecurityContextToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- RequireDerivedKeys defined above. -->
+    <!-- RequireImpliedDerivedKeys defined above. -->
+    <!-- RequireExplicitDerivedKeys defined above. -->
+
+    <xs:element name="RequireExternalUriReference" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.6 SecurityContextToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="SC13SecurityContextToken" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.6 SecurityContextToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="SecureConversationToken" type="tns:SecureConversationTokenType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.7 SecureConversationToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="SecureConversationTokenType">
+        <xs:sequence>
+            <xs:choice minOccurs="0">
+                <xs:element name="Issuer" type="wsa:EndpointReferenceType" />
+                <xs:element name="IssuerName" type="xs:anyURI" />
+            </xs:choice>
+            <!--
+                  Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+                  <xs:element ref="wsp:Policy" minOccurs="0" />
+                  -->
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
+        </xs:sequence>
+        <xs:attribute ref="tns:IncludeToken" use="optional" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+    <!-- RequireDerivedKeys defined above. -->
+    <!-- RequireImpliedDerivedKeys defined above. -->
+    <!-- RequireExplicitDerivedKeys defined above. -->
+    <!-- RequireExternalUriReference defined above. -->
+    <!-- SC13SecurityContextToken defined above. -->
+    <!-- MustNotSendCancel defined above. -->
+    <!-- MustNotSendAmend defined above. -->
+    <!-- MustNotSendRenew defined above. -->
+
+    <xs:element name="BootstrapPolicy" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.7 SecureConversationToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="SamlToken" type="tns:TokenAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en" >
+                5.4.8 SamlToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- RequireDerivedKeys defined above. -->
+    <!-- RequireImpliedDerivedKeys defined above. -->
+    <!-- RequireExplicitDerivedKeys defined above. -->
+    <!-- RequireKeyIdentifierReference defined above. -->
+
+    <xs:element name="WssSamlV11Token10" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.8 SamlToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssSamlV11Token11" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.8 SamlToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssSamlV20Token11" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.8 SamlToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="RelToken" type="tns:TokenAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.9 RelToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- RequireDerivedKeys defined above. -->
+    <!-- RequireImpliedDerivedKeys defined above. -->
+    <!-- RequireExplicitDerivedKeys defined above. -->
+    <!-- RequireKeyIdentifierReference defined above. -->
+
+    <xs:element name="WssRelV10Token10" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.9 RelToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssRelV20Token10" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.9 RelToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssRelV10Token11" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.9 RelToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="WssRelV20Token11" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.9 RelToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="HttpsToken" type="tns:TokenAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.10 HttpsToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="HttpBasicAuthentication" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.10 HttpsToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="HttpDigestAuthentication" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.10 HttpsToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireClientCertificate" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.10 HttpsToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="KeyValueToken" type="tns:KeyValueTokenType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.11 KeyValueToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="KeyValueTokenType">
+        <xs:sequence>
+            <!--
+                  Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+                  <xs:element ref="wsp:Policy" minOccurs="0" />
+                  -->
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
+        </xs:sequence>
+        <xs:attribute ref="tns:IncludeToken" use="optional" />
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+    <xs:element name="RsaKeyValue" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                5.4.11 KeyValueToken Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <!--
+      7. Security Binding Assertions
+      -->
+    <xs:element name="AlgorithmSuite" type="tns:NestedPolicyType" >
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:complexType name="NestedPolicyType">
+        <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax"/>
+        </xs:sequence>
+        <xs:anyAttribute namespace="##any" processContents="lax" />
+    </xs:complexType>
+
+    <xs:element name="Basic256" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic192" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic128" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="TripleDes" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic256Rsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic192Rsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic128Rsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="TripleDesRsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic256Sha256" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic192Sha256" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic128Sha256" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="TripleDesSha256" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic256Sha256Rsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic192Sha256Rsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Basic128Sha256Rsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="TripleDesSha256Rsa15" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="InclusiveC14N" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="SOAPNormalization10" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="STRTransform10" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="XPath10" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="XPathFilter20" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="AbsXPath" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.1 AlgorithmSuite Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="Layout" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.2 Layout Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="Strict" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.2 Layout Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="Lax" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.2 Layout Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="LaxTsFirst" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.2 Layout Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="LaxTsLast" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.2 Layout Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="TransportBinding" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.3 TransportBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="TransportToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.3 TransportBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- Layout defined above. -->
+
+    <xs:element name="IncludeTimestamp" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.3 TransportBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="SymmetricBinding" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="EncryptionToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="SignatureToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8=7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="ProtectionToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- Layout defined above. -->
+    <!-- IncludeTimestamp defined above. -->
+
+    <xs:element name="EncryptBeforeSigning" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="EncryptSignature" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="ProtectTokens" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="OnlySignEntireHeadersAndBody" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.4 SymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="AsymmetricBinding" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.5 AsymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="InitiatorToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.5 AsymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="InitiatorSignatureToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.5 AsymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="InitiatorEncryptionToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.5 AsymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="RecipientToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.5 AsymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="RecipientSignatureToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.5 AsymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="RecipientEncryptionToken" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                7.5 AsymmetricBinding Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- Layout defined above. -->
+    <!-- IncludeTimestamp defined above. -->
+    <!-- EncryptBeforeSigning defined above. -->
+    <!-- EncryptSignature defined above. -->
+    <!-- ProtectTokens defined above. -->
+    <!-- OnlySignEntireHeadersAndBody defined above. -->
+
+    <!--
+      8. Supporting Tokens
+      -->
+    <xs:element name="SupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.1 SupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <xs:element name="SignedSupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.2 SignedSupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <xs:element name="EndorsingSupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.3 EndorsingSupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <xs:element name="SignedEndorsingSupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.4 SignedEndorsingSupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <xs:element name="SignedEncryptedSupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.5 SignedEncryptedSupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <xs:element name="EncryptedSupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.6 EncryptedSupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <xs:element name="EndorsingEncryptedSupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.7 EndorsingEncryptedSupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <xs:element name="SignedEndorsingEncryptedSupportingTokens" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                8.8 SignedEndorsingEncryptedSupportingTokens Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- AlgorithmSuite defined above. -->
+    <!-- SignedParts defined above. -->
+    <!-- SignedElements defined above. -->
+    <!-- EncryptedParts defined above. -->
+    <!-- EncryptedElements defined above. -->
+
+    <!--
+      9. WSS: SOAP Message Security Options
+      -->
+    <xs:element name="Wss10" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.1 Wss10 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="MustSupportRefKeyIdentifier" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.1 Wss10 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustSupportRefIssuerSerial" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.1 Wss10 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustSupportRefExternalURI" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.1 Wss10 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustSupportRefEmbeddedToken" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.1 Wss10 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="Wss11" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.2 Wss11 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <!-- MustSupportRefKeyIdentifier defined above. -->
+    <!-- MustSupportRefIssuerSerial defined above. -->
+    <!-- MustSupportRefExternalURI defined above. -->
+    <!-- MustSupportRefEmbeddedToken defined above. -->
+
+    <xs:element name="MustSupportRefThumbprint" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.2 Wss11 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustSupportRefEncryptedKey" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.2 Wss11 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireSignatureConfirmation" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                9.2 Wss11 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <!--
+      10. WS-Trust Options
+      -->
+    <xs:element name="Trust13" type="tns:NestedPolicyType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="MustSupportClientChallenge" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustSupportServerChallenge" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireClientEntropy" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireServerEntropy" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="MustSupportIssuedTokens" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireRequestSecurityTokenCollection" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="RequireAppiesTo" type="tns:QNameAssertionType">
+        <xs:annotation>
+            <xs:documentation xml:lang="en">
+                10.1 Trust13 Assertion
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/addressing.xjb b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/addressing.xjb
new file mode 100644
index 000000000..94629555d
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/addressing.xjb
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="3.0" 
+  xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb" 
+  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+  xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" 
+  jaxb:extensionBindingPrefixes="xjc">
+    <jaxb:bindings schemaLocation="addressing.xsd" node="/xs:schema">
+        <jaxb:schemaBindings>
+            <jaxb:package name="org.apache.cxf.ws.addressing.v200408"/>
+        </jaxb:schemaBindings>
+    </jaxb:bindings>
+</jaxb:bindings>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/addressing.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/addressing.xsd
new file mode 100644
index 000000000..bdc08075d
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/addressing.xsd
@@ -0,0 +1,133 @@
+<?xml version="1.0"?>
+<!-- 
+Copyright © 2002-2004 BEA Systems Inc., International Business Machines Corporation, 
+Microsoft Corporation, Inc, SAP AG, and Sun Microsystems, Inc.. All rights reserved. 
+
+Permission to copy, display, perform, modify and distribute the WS-Addressing Specification, 
+and to authorize others to do the foregoing, in any medium without fee or royalty is hereby
+granted for the purpose of developing and evaluating the WS-Addressing Specification.
+
+BEA, IBM, Microsoft, SAP AG, and Sun Microsystems (collectively, the "Authors") each agree 
+to grant a license to third parties, under royalty-free  and otherwise reasonable, 
+non-discriminatory terms and conditions, to their respective essential patent claims that
+they deem necessary to implement the WS-Addressing Specification.
+
+DISCLAIMERS:
+
+THE WS-Addressing Specification IS PROVIDED "AS IS", AND THE AUTHORS MAKE NO REPRESENTATIONS
+OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF 
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE 
+CONTENTS OF THE WS-Addressing Specification IS SUITABLE FOR ANY PURPOSE; NOR THAT THE 
+IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, 
+TRADEMARKS OR OTHER RIGHTS.
+
+THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL 
+DAMAGES ARISING OUT OF ANY USE OF THE WS-Addressing Specification OR THE PERFORMANCE OR 
+IMPLEMENTATION OF THE CONTENTS THEREOF.
+
+You may remove these disclaimers from your modified versions of the WS-Addressing 
+Specification provided that you effectively disclaim all warranties and liabilities on behalf 
+of all copyright holders in the copies of any such modified versions you distribute.
+
+The name and trademarks of the Authors may NOT be used in any manner, including advertising 
+or publicity pertaining to the WS-Addressing Specification or its contents without specific, 
+written prior permission. Title to copyright in the WS-Addressing Specification will at all 
+times remain with the Authors.
+
+No other rights are granted by implication, estoppel or otherwise.
+
+-->
+<xs:schema targetNamespace="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" elementFormDefault="qualified" blockDefault="#all">
+  <!-- //////////////////// WS-Addressing //////////////////// -->
+  <!-- Endpoint reference -->
+  <xs:element name="EndpointReference" type="wsa:EndpointReferenceType"/>
+  <xs:complexType name="EndpointReferenceType">
+    <xs:sequence>
+      <xs:element name="Address" type="wsa:AttributedURI"/>
+      <xs:element name="ReferenceProperties" type="wsa:ReferencePropertiesType" minOccurs="0"/>
+      <xs:element name="ReferenceParameters" type="wsa:ReferenceParametersType" minOccurs="0"/>
+      <xs:element name="PortType" type="wsa:AttributedQName" minOccurs="0"/>
+      <xs:element name="ServiceName" type="wsa:ServiceNameType" minOccurs="0"/>
+      <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded">
+        <xs:annotation>
+          <xs:documentation>
+            If "Policy" elements from namespace "http://schemas.xmlsoap.org/ws/2002/12/policy#policy" are used, they must appear first (before any extensibility elements).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:any>
+    </xs:sequence>
+    <xs:anyAttribute namespace="##other" processContents="lax"/>
+  </xs:complexType>
+  <xs:complexType name="ReferencePropertiesType">
+    <xs:sequence>
+      <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="ReferenceParametersType">
+    <xs:sequence>
+      <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="ServiceNameType">
+    <xs:simpleContent>
+      <xs:extension base="xs:QName">
+        <xs:attribute name="PortName" type="xs:NCName"/>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <!-- Message information header blocks -->
+  <xs:element name="MessageID" type="wsa:AttributedURI"/>
+  <xs:element name="RelatesTo" type="wsa:Relationship"/>
+  <xs:element name="To" type="wsa:AttributedURI"/>
+  <xs:element name="Action" type="wsa:AttributedURI"/>
+  <xs:element name="From" type="wsa:EndpointReferenceType"/>
+  <xs:element name="ReplyTo" type="wsa:EndpointReferenceType"/>
+  <xs:element name="FaultTo" type="wsa:EndpointReferenceType"/>
+  <xs:complexType name="Relationship">
+    <xs:simpleContent>
+      <xs:extension base="xs:anyURI">
+        <xs:attribute name="RelationshipType" type="xs:QName" use="optional"/>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:simpleType name="RelationshipTypeValues">
+    <xs:restriction base="xs:QName">
+      <xs:enumeration value="wsa:Reply"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:element name="ReplyAfter" type="wsa:ReplyAfterType"/>
+  <xs:complexType name="ReplyAfterType">
+    <xs:simpleContent>
+      <xs:extension base="xs:nonNegativeInteger">
+        <xs:anyAttribute namespace="##other"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:simpleType name="FaultSubcodeValues">
+    <xs:restriction base="xs:QName">
+      <xs:enumeration value="wsa:InvalidMessageInformationHeader"/>
+      <xs:enumeration value="wsa:MessageInformationHeaderRequired"/>
+      <xs:enumeration value="wsa:DestinationUnreachable"/>
+      <xs:enumeration value="wsa:ActionNotSupported"/>
+      <xs:enumeration value="wsa:EndpointUnavailable"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:attribute name="Action" type="xs:anyURI"/>
+  <!-- Common declarations and definitions -->
+  <xs:complexType name="AttributedQName">
+    <xs:simpleContent>
+      <xs:extension base="xs:QName">
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:complexType name="AttributedURI">
+    <xs:simpleContent>
+      <xs:extension base="xs:anyURI">
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/http-conf.xjb b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/http-conf.xjb
new file mode 100644
index 000000000..54b9325b7
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/http-conf.xjb
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="3.0"
+  xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
+  jaxb:extensionBindingPrefixes="xjc">
+
+    <jaxb:bindings schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd" node="/xs:schema">
+        <jaxb:schemaBindings>
+            <jaxb:package name="org.apache.cxf.wsdl"/>
+        </jaxb:schemaBindings>
+        <jaxb:globalBindings generateIsSetMethod="true"/>
+    </jaxb:bindings>
+</jaxb:bindings>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/http-conf.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/http-conf.xsd
new file mode 100644
index 000000000..e0d8f89ae
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/http-conf.xsd
@@ -0,0 +1,420 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+<xs:schema targetNamespace="http://cxf.apache.org/transports/http/configuration"
+           xmlns:http-conf="http://cxf.apache.org/transports/http/configuration"
+           xmlns:ptp="http://cxf.apache.org/configuration/parameterized-types"
+           xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           elementFormDefault="qualified"
+           attributeFormDefault="unqualified"
+           xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
+           jaxb:version="3.0">
+
+    <xs:import namespace="http://schemas.xmlsoap.org/wsdl/"
+               schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd"/>
+    <xs:import namespace="http://cxf.apache.org/configuration/parameterized-types"
+               schemaLocation="http://cxf.apache.org/schemas/configuration/parameterized-types.xsd"/>
+
+    <xs:element name="server" type="http-conf:HTTPServerPolicy"/>
+    <xs:element name="client" type="http-conf:HTTPClientPolicy"/>
+
+    <xs:element name="contextMatchStrategy" type="xs:string" default="stem"/>
+    <xs:element name="fixedParameterOrder"  type="xs:boolean" default="false"/>
+
+    <xs:complexType name="HTTPServerPolicy">
+        <xs:annotation>
+            <xs:documentation>Properties used for configuring a server-side HTTP prort</xs:documentation>
+        </xs:annotation>
+        <xs:sequence></xs:sequence>
+
+        <xs:attribute name="ReceiveTimeout" type="xs:unsignedInt" use="optional" default="30000">
+            <xs:annotation>
+                <xs:documentation>
+                    Receive timeout in milliseconds, 0 is infinite
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="SuppressClientSendErrors" type="xs:boolean" use="optional" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    When set to false, exceptions will be thrown when an error is encountered
+                    receiving a request from the client.  When set to true these errors will
+                    be suppressed. The default is false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="SuppressClientReceiveErrors" type="xs:boolean" use="optional" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    When set to false, exceptions will be thrown when an error is encountered
+                    sending a reply from to client.  When set to true these errors will be
+                    suppressed. The default is false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="HonorKeepAlive" type="xs:boolean" use="optional" default="true">
+            <xs:annotation>
+                <xs:documentation>
+                    When set to true, the request socket will remain open after the reply is
+                    sent to the client, if the client has requested keep-alive and is using
+                    at least version 1.1 of HTTP.  If set to false, the socket will be closed
+                    after each reply is sent, even if the client requests the server to keep
+                    the connection alive.  Keep-Alive improves performance for the client
+                    requesting such behavior, but can limit overall scalability of the server
+                    for handling many clients. The Default is true.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="KeepAliveParameters" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    If KeepAlive connections are turned on, this allows sending additional
+                    parameters back to the client via the Keep-Alive header.   Common
+                    parameters are timeout and max to specify how long the client should
+                    hold open the connection and how many connections to hold open.   Different
+                    clients may have different defaults.   For Java HTTPUrlConnection, the
+                    defaults would be timeout=5, max=5
+
+                    Example:  timeout=60, max=5;
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="RedirectURL" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    A URL to which clients are redirected (if the ReplyCode and ReplyDescription
+                    are not set, ReplyCode will be set to 302, and  ReplyDescription will be set
+                    to 'Object Moved').
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="CacheControl" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Most commonly used to specify no-cache, however the standard supports a
+                    dozen or so caching related directives for responses.
+                </xs:documentation>
+            </xs:annotation>
+
+        </xs:attribute>
+
+        <xs:attribute name="ContentLocation" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the URL representing the resource used to satisfy the request(e.g., to inform that default.htm document was used.)
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="ContentType" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the MIME type used for responses.  The default is set by the binding.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="ContentEncoding" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies any additional encoding applied to the response. Values are specified using IANA labels.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="ServerType" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies an optional value for the HTTP ServerType property.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:anyAttribute namespace="http://schemas.xmlsoap.org/wsdl/"/>
+
+    </xs:complexType>
+
+    <xs:complexType name="HTTPClientPolicy">
+        <xs:annotation>
+            <xs:documentation>Properties used to configure a client-side HTTP port</xs:documentation>
+        </xs:annotation>
+        <xs:sequence/>
+        <xs:attribute name="ConnectionTimeout" type="ptp:ParameterizedUInt" use="optional" default="30000">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the amount of time, in milliseconds, that the consumer will attempt to establish a connection before it times out. 0 is infinite.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="ReceiveTimeout" type="ptp:ParameterizedUInt" use="optional" default="60000">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the amount of time, in milliseconds, that the consumer will wait for a response before it times out. 0 is infinite.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="ConnectionRequestTimeout" type="ptp:ParameterizedUInt" use="optional" default="60000">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the amount of time, in milliseconds, used when requesting a connection from the connection manager(if appliable). 0 is infinite.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="AsyncExecuteTimeout" type="ptp:ParameterizedUInt" use="optional" default="5000">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the amount of time, in milliseconds, that a conduit will try and enqueue the response on the workqueue.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="AsyncExecuteTimeoutRejection" type="ptp:ParameterizedBoolean" use="optional" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies whether the conduit should throw and exception if it fails to enqueue the async response handling onto the workqueue.
+                    By default, if the conduit fails to enqueue the response handling on the workqueue, it will process the response on the current thread.  Set this to true to raise and exception instead.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="AutoRedirect" type="ptp:ParameterizedBoolean" use="optional" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies if the consumer will automatically follow a server issued redirection.
+                    (name is not part of standard)
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="MaxRetransmits" type="ptp:ParameterizedInt" use="optional" default="-1">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the maximum amount of retransmits that are allowed for redirects. Retransmits for
+                    authorization is included in the retransmit count. Each redirect may cause another
+                    retransmit for a UNAUTHORIZED response code, ie. 401.
+                    Any negative number indicates unlimited retransmits,
+                    although, loop protection is provided.
+                    The default is unlimited.
+                    (name is not part of standard)
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="AllowChunking" type="ptp:ParameterizedBoolean" use="optional" default="true">
+            <xs:annotation>
+                <xs:documentation>
+                    If true, the client is free to use chunking streams if it wants, but it is not
+                    required to use chunking streams. If false, the client
+                    must use regular, non-chunked requests in all cases.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="ChunkingThreshold" type="ptp:ParameterizedInt" use="optional" default="4096">
+            <xs:annotation>
+                <xs:documentation>
+                    If AllowChunking is true, this sets the threshold at which messages start
+                    getting chunked. Messages under this limit do not get chunked.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="ChunkLength" type="ptp:ParameterizedInt" use="optional" default="-1">
+            <xs:annotation>
+                <xs:documentation>Specifies the chunk length for a HttpURLConnection. This value is used in java.net.HttpURLConnection.setChunkedStreamingMode(int chunklen). chunklen indicates the number of bytes to write in each chunk. If chunklen is less than or equal to zero, a default value will be used.</xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="Accept" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the MIME types the client is prepared to handle (e.g., HTML, JPEG, GIF, etc.)
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="AcceptLanguage" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the language the client desires (e.g., English, French, etc.)
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="AcceptEncoding" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the encoding the client is prepared to handle (e.g., gzip)
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="ContentType" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the content type of the stream being sent in a post request.
+                    (this should be text/xml for web services, or can be set to
+                    application/x-www-form-urlencoded if the client is sending form data).
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="Host" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the Internet host and port number of the resource on which the request is being invoked.
+                    This is sent by default based upon the URL. Certain DNS scenarios or
+                    application designs may request you to set this, but typically it is
+                    not required.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="Connection" type="http-conf:connectionType" use="optional" default="Keep-Alive">
+            <xs:annotation>
+                <xs:documentation>
+                    The connection disposition. If close the connection to the server is closed
+                    after each request/response dialog. If Keep-Alive the client requests the server
+                    to keep the connection open, and if the server honors the keep alive request,
+                    the connection is reused. Many servers and proxies do not honor keep-alive requests.
+                </xs:documentation>
+            </xs:annotation>
+
+        </xs:attribute>
+
+        <xs:attribute name="CacheControl" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Most commonly used to specify no-cache, however the standard supports a
+                    dozen or so caching related directives for requests
+                </xs:documentation>
+            </xs:annotation>
+
+        </xs:attribute>
+
+        <xs:attribute name="Version" type="xs:string" use="optional" default="auto">
+            <xs:annotation>
+                <xs:documentation>
+                    HTTP Version used for the connection.  The "auto" default will use whatever the default is
+                    for the HTTPConduit implementation.
+                </xs:documentation>
+            </xs:annotation>
+
+        </xs:attribute>
+
+        <xs:attribute name="Cookie" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies a cookie to send to the server. Some stateful session designs will use cookies to identify a session.
+                    If the cookie is static, you can supply it here. If it is dynamic,
+                    it will need to be set by the server on first access, and can be handled
+                    automatically by the runtime.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="BrowserType" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    aka User-Agent
+                    Specifies the type of browser is sending the request. This is usually only
+                    needed when sites have HTML customized to Netscape vs IE, etc, but can
+                    also be used to optimize for different SOAP stacks.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="Referer" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the URL that referred us to this URL. This is
+                    sent automatically with auto redirect.
+
+                    May allow the server to optimize processing based upon
+                    previous task flow.  However, typically not used in
+                    web services applications.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <xs:attribute name="DecoupledEndpoint" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the URL of a decoupled endpoint for the receipt of responses over a separate provider-&gt;consumer connection.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+
+        <!--Proxy server attributes-->
+        <xs:attribute name="ProxyServer" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the address of proxy server if one is used.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="ProxyServerPort" type="ptp:ParameterizedInt" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the port number used by the proxy server.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="NonProxyHosts" type="xs:string" use="optional">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the list of hostnames that will not use the proxy configuration.
+                    Examples of value:
+                    * "localhost" -> A single hostname
+                    * "localhost|www.google.com" -> 2 hostnames that will not use the proxy configuration
+                    * "localhost|www.google.*|*.apache.org" -> It's also possible to use a pattern-like value
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:attribute name="ProxyServerType" type="http-conf:proxyServerType" use="optional" default="HTTP">
+            <xs:annotation>
+                <xs:documentation>
+                    Specifies the type of the proxy server. Can be either HTTP or SOCKS.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
+        <xs:anyAttribute namespace="http://schemas.xmlsoap.org/wsdl/"/>
+    </xs:complexType>
+
+
+    <xs:simpleType name="connectionType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="close"/>
+            <xs:enumeration value="Keep-Alive"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:simpleType name="proxyServerType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="HTTP"/>
+            <xs:enumeration value="SOCKS"/>
+        </xs:restriction>
+    </xs:simpleType>
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/ws-addr.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/ws-addr.xsd
new file mode 100644
index 000000000..430cf0409
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/ws-addr.xsd
@@ -0,0 +1,146 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!--
+    W3C XML Schema defined in the Web Services Addressing 1.0 specification
+    http://www.w3.org/TR/ws-addr-core
+
+   Copyright ?? 2005 World Wide Web Consortium,
+
+   (Massachusetts Institute of Technology, European Research Consortium for
+   Informatics and Mathematics, Keio University). All Rights Reserved. This
+   work is distributed under the W3C?? Software License [1] in the hope that
+   it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+   [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:tns="http://www.w3.org/2005/08/addressing"
+           targetNamespace="http://www.w3.org/2005/08/addressing" blockDefault="#all"
+           elementFormDefault="qualified">
+
+    <!-- Constructs from the WS-Addressing Core -->
+
+    <xs:element name="EndpointReference" type="tns:EndpointReferenceType"/>
+    <xs:complexType name="EndpointReferenceType">
+        <xs:sequence>
+            <xs:element name="Address" type="tns:AttributedURIType"/>
+            <xs:element name="ReferenceParameters" type="tns:ReferenceParametersType" minOccurs="0"/>
+            <xs:element ref="tns:Metadata" minOccurs="0"/>
+            <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+
+    <xs:complexType name="ReferenceParametersType">
+        <xs:sequence>
+            <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+
+    <xs:element name="Metadata" type="tns:MetadataType"/>
+    <xs:complexType name="MetadataType">
+        <xs:sequence>
+            <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+
+    <xs:element name="MessageID" type="tns:AttributedURIType"/>
+    <xs:element name="RelatesTo" type="tns:RelatesToType"/>
+    <xs:complexType name="RelatesToType">
+        <xs:simpleContent>
+            <xs:extension base="xs:anyURI">
+                <xs:attribute name="RelationshipType" type="tns:RelationshipTypeOpenEnum"
+                              use="optional" default="http://www.w3.org/2005/08/addressing/reply"/>
+                <xs:anyAttribute namespace="##other" processContents="lax"/>
+            </xs:extension>
+        </xs:simpleContent>
+    </xs:complexType>
+
+    <xs:simpleType name="RelationshipTypeOpenEnum">
+        <xs:union memberTypes="tns:RelationshipType xs:anyURI"/>
+    </xs:simpleType>
+
+    <xs:simpleType name="RelationshipType">
+        <xs:restriction base="xs:anyURI">
+            <xs:enumeration value="http://www.w3.org/2005/08/addressing/reply"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:element name="ReplyTo" type="tns:EndpointReferenceType"/>
+    <xs:element name="From" type="tns:EndpointReferenceType"/>
+    <xs:element name="FaultTo" type="tns:EndpointReferenceType"/>
+    <xs:element name="To" type="tns:AttributedURIType"/>
+    <xs:element name="Action" type="tns:AttributedURIType"/>
+
+    <xs:complexType name="AttributedURIType">
+        <xs:simpleContent>
+            <xs:extension base="xs:anyURI">
+                <xs:anyAttribute namespace="##other" processContents="lax"/>
+            </xs:extension>
+        </xs:simpleContent>
+    </xs:complexType>
+
+    <!-- Constructs from the WS-Addressing SOAP binding -->
+
+    <xs:attribute name="IsReferenceParameter" type="xs:boolean"/>
+
+    <xs:simpleType name="FaultCodesOpenEnumType">
+        <xs:union memberTypes="tns:FaultCodesType xs:QName"/>
+    </xs:simpleType>
+
+    <xs:simpleType name="FaultCodesType">
+        <xs:restriction base="xs:QName">
+            <xs:enumeration value="tns:InvalidAddressingHeader"/>
+            <xs:enumeration value="tns:InvalidAddress"/>
+            <xs:enumeration value="tns:InvalidEPR"/>
+            <xs:enumeration value="tns:InvalidCardinality"/>
+            <xs:enumeration value="tns:MissingAddressInEPR"/>
+            <xs:enumeration value="tns:DuplicateMessageID"/>
+            <xs:enumeration value="tns:ActionMismatch"/>
+            <xs:enumeration value="tns:MessageAddressingHeaderRequired"/>
+            <xs:enumeration value="tns:DestinationUnreachable"/>
+            <xs:enumeration value="tns:ActionNotSupported"/>
+            <xs:enumeration value="tns:EndpointUnavailable"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:element name="RetryAfter" type="tns:AttributedUnsignedLongType"/>
+    <xs:complexType name="AttributedUnsignedLongType">
+        <xs:simpleContent>
+            <xs:extension base="xs:unsignedLong">
+                <xs:anyAttribute namespace="##other" processContents="lax"/>
+            </xs:extension>
+        </xs:simpleContent>
+    </xs:complexType>
+
+    <xs:element name="ProblemHeaderQName" type="tns:AttributedQNameType"/>
+    <xs:complexType name="AttributedQNameType">
+        <xs:simpleContent>
+            <xs:extension base="xs:QName">
+                <xs:anyAttribute namespace="##other" processContents="lax"/>
+            </xs:extension>
+        </xs:simpleContent>
+    </xs:complexType>
+
+    <xs:element name="ProblemHeader" type="tns:AttributedAnyType"/>
+    <xs:complexType name="AttributedAnyType">
+        <xs:sequence>
+            <xs:any namespace="##any" processContents="lax"/>
+        </xs:sequence>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+
+    <xs:element name="ProblemIRI" type="tns:AttributedURIType"/>
+
+    <xs:element name="ProblemAction" type="tns:ProblemActionType"/>
+    <xs:complexType name="ProblemActionType">
+        <xs:sequence>
+            <xs:element ref="tns:Action" minOccurs="0"/>
+            <xs:element name="SoapAction" minOccurs="0" type="xs:anyURI"/>
+        </xs:sequence>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/wsdl.xjb b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/wsdl.xjb
new file mode 100644
index 000000000..47aa1fad9
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/wsdl.xjb
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="3.0" 
+  xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb" 
+  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+  xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" 
+  jaxb:extensionBindingPrefixes="xjc">
+    <jaxb:bindings schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd" node="/xs:schema">
+        <jaxb:schemaBindings>
+            <jaxb:package name="org.apache.cxf.wsdl"/>
+        </jaxb:schemaBindings>
+        <jaxb:globalBindings generateIsSetMethod="true"/>
+    </jaxb:bindings>
+    <jaxb:bindings schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd" node="/xs:schema/xs:complexType[@name='tExtensibilityElement']">
+        <jaxb:class implClass="org.apache.cxf.wsdl.TExtensibilityElementImpl"/>
+    </jaxb:bindings>
+</jaxb:bindings>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/wsdl.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/wsdl.xsd
new file mode 100644
index 000000000..06b74231d
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/wsdl/wsdl.xsd
@@ -0,0 +1,322 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!-- 
+ 
+Copyright 2001 - 2005, International Business Machines Corporation and Microsoft Corporation
+All Rights Reserved
+
+License for WSDL Schema Files
+
+The Authors grant permission to copy and distribute the WSDL Schema 
+Files in any medium without fee or royalty as long as this notice and 
+license are distributed with them.  The originals of these files can 
+be located at:
+
+http://schemas.xmlsoap.org/wsdl/2004-08-24.xsd
+
+THESE SCHEMA FILES ARE PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS 
+OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THESE FILES, INCLUDING, BUT NOT 
+LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, 
+NON-INFRINGEMENT OR TITLE.  THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, 
+INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR 
+RELATING TO ANY USE OR DISTRIBUTION OF THESE FILES.
+
+The name and trademarks of the Authors may NOT be used in any manner, 
+including advertising or publicity pertaining to these files or any program 
+or service that uses these files, written prior permission.  Title to copyright 
+in these files will at all times remain with the Authors.
+
+No other rights are granted by implication, estoppel or otherwise.
+
+
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+           targetNamespace="http://schemas.xmlsoap.org/wsdl/"
+           elementFormDefault="qualified" >
+
+    <xs:complexType mixed="true" name="tDocumentation" >
+        <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax" />
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="tDocumented" >
+        <xs:annotation>
+            <xs:documentation>
+                This type is extended by  component types to allow them to be documented
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="documentation" type="wsdl:tDocumentation" minOccurs="0" />
+        </xs:sequence>
+    </xs:complexType>
+
+    <!-- implemented resolution of swa124 -->
+    <xs:complexType name="tExtensibleAttributesDocumented" abstract="true" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tDocumented" >
+                <xs:annotation>
+                    <xs:documentation>
+                        This type is extended by component types to allow attributes from other namespaces to be added.
+                    </xs:documentation>
+                </xs:annotation>
+                <xs:sequence>
+                    <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
+                </xs:sequence>
+                <xs:anyAttribute namespace="##other" processContents="lax" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <!-- implemented resolution of swa124 -->
+    <xs:complexType name="tExtensibleDocumented" abstract="true" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tDocumented" >
+                <xs:annotation>
+                    <xs:documentation>
+                        This type is extended by component types to allow elements from other namespaces to be added.
+                    </xs:documentation>
+                </xs:annotation>
+                <xs:sequence>
+                    <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
+                </xs:sequence>
+                <xs:anyAttribute namespace="##other" processContents="lax" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:element name="definitions" type="wsdl:tDefinitions" >
+        <xs:key name="message" >
+            <xs:selector xpath="wsdl:message" />
+            <xs:field xpath="@name" />
+        </xs:key>
+        <xs:key name="portType" >
+            <xs:selector xpath="wsdl:portType" />
+            <xs:field xpath="@name" />
+        </xs:key>
+        <xs:key name="binding" >
+            <xs:selector xpath="wsdl:binding" />
+            <xs:field xpath="@name" />
+        </xs:key>
+        <xs:key name="service" >
+            <xs:selector xpath="wsdl:service" />
+            <xs:field xpath="@name" />
+        </xs:key>
+        <xs:key name="import" >
+            <xs:selector xpath="wsdl:import" />
+            <xs:field xpath="@namespace" />
+        </xs:key>
+    </xs:element>
+
+    <xs:group name="anyTopLevelOptionalElement" >
+        <xs:annotation>
+            <xs:documentation>
+                Any top level optional element allowed to appear more then once - any child of definitions element except wsdl:types. Any extensibility element is allowed in any place.
+            </xs:documentation>
+        </xs:annotation>
+        <xs:choice>
+            <xs:element name="import" type="wsdl:tImport" />
+            <xs:element name="types" type="wsdl:tTypes" />
+            <xs:element name="message"  type="wsdl:tMessage" >
+                <xs:unique name="part" >
+                    <xs:selector xpath="wsdl:part" />
+                    <xs:field xpath="@name" />
+                </xs:unique>
+            </xs:element>
+            <xs:element name="portType" type="wsdl:tPortType" />
+            <xs:element name="binding"  type="wsdl:tBinding" />
+            <xs:element name="service"  type="wsdl:tService" >
+                <xs:unique name="port" >
+                    <xs:selector xpath="wsdl:port" />
+                    <xs:field xpath="@name" />
+                </xs:unique>
+            </xs:element>
+        </xs:choice>
+    </xs:group>
+
+    <!-- implemented resolution of er015 and UPA fix. ASK -->
+    <xs:complexType name="tDefinitions">
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented">
+                <xs:sequence minOccurs="0">
+                    <xs:group ref="wsdl:anyTopLevelOptionalElement"/>
+                    <xs:choice minOccurs="0" maxOccurs="unbounded">
+                        <xs:group ref="wsdl:anyTopLevelOptionalElement"/>
+                        <xs:any namespace="##other" processContents="lax"/>
+                    </xs:choice>
+                </xs:sequence>
+                <xs:attribute name="targetNamespace" type="xs:anyURI" use=
+                        "optional"/>
+                <xs:attribute name="name" type="xs:NCName" use="optional"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tImport" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+                <xs:attribute name="namespace" type="xs:anyURI" use="required" />
+                <xs:attribute name="location" type="xs:anyURI" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tTypes" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" />
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tMessage" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:sequence>
+                    <xs:element name="part" type="wsdl:tPart" minOccurs="0" maxOccurs="unbounded" />
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tPart" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+                <xs:attribute name="element" type="xs:QName" use="optional" />
+                <xs:attribute name="type" type="xs:QName" use="optional" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tPortType" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+                <xs:sequence>
+                    <xs:element name="operation" type="wsdl:tOperation" minOccurs="0" maxOccurs="unbounded" />
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tOperation" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:sequence>
+                    <xs:choice>
+                        <xs:group ref="wsdl:request-response-or-one-way-operation" />
+                        <xs:group ref="wsdl:solicit-response-or-notification-operation" />
+                    </xs:choice>
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+                <xs:attribute name="parameterOrder" type="xs:NMTOKENS" use="optional" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:group name="request-response-or-one-way-operation" >
+        <xs:sequence>
+            <xs:element name="input" type="wsdl:tParam" />
+            <xs:sequence minOccurs='0' >
+                <xs:element name="output" type="wsdl:tParam" />
+                <xs:element name="fault" type="wsdl:tFault" minOccurs="0" maxOccurs="unbounded" />
+            </xs:sequence>
+        </xs:sequence>
+    </xs:group>
+
+    <xs:group name="solicit-response-or-notification-operation" >
+        <xs:sequence>
+            <xs:element name="output" type="wsdl:tParam" />
+            <xs:sequence minOccurs='0' >
+                <xs:element name="input" type="wsdl:tParam" />
+                <xs:element name="fault" type="wsdl:tFault" minOccurs="0" maxOccurs="unbounded" />
+            </xs:sequence>
+        </xs:sequence>
+    </xs:group>
+
+    <xs:complexType name="tParam" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+                <xs:attribute name="name" type="xs:NCName" use="optional" />
+                <xs:attribute name="message" type="xs:QName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tFault" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleAttributesDocumented" >
+                <xs:attribute name="name" type="xs:NCName"  use="required" />
+                <xs:attribute name="message" type="xs:QName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tBinding" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:sequence>
+                    <xs:element name="operation" type="wsdl:tBindingOperation" minOccurs="0" maxOccurs="unbounded" />
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+                <xs:attribute name="type" type="xs:QName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tBindingOperationMessage" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:attribute name="name" type="xs:NCName" use="optional" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tBindingOperationFault" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tBindingOperation" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:sequence>
+                    <xs:element name="input" type="wsdl:tBindingOperationMessage" minOccurs="0" />
+                    <xs:element name="output" type="wsdl:tBindingOperationMessage" minOccurs="0" />
+                    <xs:element name="fault" type="wsdl:tBindingOperationFault" minOccurs="0" maxOccurs="unbounded" />
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tService" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:sequence>
+                    <xs:element name="port" type="wsdl:tPort" minOccurs="0" maxOccurs="unbounded" />
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tPort" >
+        <xs:complexContent>
+            <xs:extension base="wsdl:tExtensibleDocumented" >
+                <xs:attribute name="name" type="xs:NCName" use="required" />
+                <xs:attribute name="binding" type="xs:QName" use="required" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:attribute name="arrayType" type="xs:string" />
+    <xs:attribute name="required" type="xs:boolean" />
+    <xs:complexType name="tExtensibilityElement" abstract="true" >
+        <xs:attribute ref="wsdl:required" use="optional" />
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/xmldsig-core-schema.xsd b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/xmldsig-core-schema.xsd
new file mode 100644
index 000000000..312bcd375
--- /dev/null
+++ b/components/camel-cxf/camel-cxf-blueprint/src/main/resources/schemas/xmldsig-core-schema.xsd
@@ -0,0 +1,305 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Schema for XML Signatures
+    http://www.w3.org/2000/09/xmldsig#
+
+    Copyright 2001 The Internet Society and W3C (Massachusetts Institute
+    of Technology, Institut National de Recherche en Informatique et en
+    Automatique, Keio University). All Rights Reserved.
+    http://www.w3.org/Consortium/Legal/
+
+    This document is governed by the W3C Software License [1] as described
+    in the FAQ [2].
+
+    [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
+    [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
+-->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+        xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+        targetNamespace="http://www.w3.org/2000/09/xmldsig#"
+        version="0.1" elementFormDefault="qualified">
+
+    <!-- Basic Types Defined for Signatures -->
+
+    <simpleType name="CryptoBinary">
+        <restriction base="base64Binary">
+        </restriction>
+    </simpleType>
+
+    <!-- Start Signature -->
+
+    <element name="Signature" type="ds:SignatureType"/>
+    <complexType name="SignatureType">
+        <sequence>
+            <element ref="ds:SignedInfo"/>
+            <element ref="ds:SignatureValue"/>
+            <element ref="ds:KeyInfo" minOccurs="0"/>
+            <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
+        </sequence>
+        <attribute name="Id" type="ID" use="optional"/>
+    </complexType>
+
+    <element name="SignatureValue" type="ds:SignatureValueType"/>
+    <complexType name="SignatureValueType">
+        <simpleContent>
+            <extension base="base64Binary">
+                <attribute name="Id" type="ID" use="optional"/>
+            </extension>
+        </simpleContent>
+    </complexType>
+
+    <!-- Start SignedInfo -->
+
+    <element name="SignedInfo" type="ds:SignedInfoType"/>
+    <complexType name="SignedInfoType">
+        <sequence>
+            <element ref="ds:CanonicalizationMethod"/>
+            <element ref="ds:SignatureMethod"/>
+            <element ref="ds:Reference" maxOccurs="unbounded"/>
+        </sequence>
+        <attribute name="Id" type="ID" use="optional"/>
+    </complexType>
+
+    <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
+    <complexType name="CanonicalizationMethodType" mixed="true">
+        <sequence>
+            <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
+            <!-- (0,unbounded) elements from (1,1) namespace -->
+        </sequence>
+        <attribute name="Algorithm" type="anyURI" use="required"/>
+    </complexType>
+
+    <element name="SignatureMethod" type="ds:SignatureMethodType"/>
+    <complexType name="SignatureMethodType" mixed="true">
+        <sequence>
+            <element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
+            <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+            <!-- (0,unbounded) elements from (1,1) external namespace -->
+        </sequence>
+        <attribute name="Algorithm" type="anyURI" use="required"/>
+    </complexType>
+
+    <!-- Start Reference -->
+
+    <element name="Reference" type="ds:ReferenceType"/>
+    <complexType name="ReferenceType">
+        <sequence>
+            <element ref="ds:Transforms" minOccurs="0"/>
+            <element ref="ds:DigestMethod"/>
+            <element ref="ds:DigestValue"/>
+        </sequence>
+        <attribute name="Id" type="ID" use="optional"/>
+        <attribute name="URI" type="anyURI" use="optional"/>
+        <attribute name="Type" type="anyURI" use="optional"/>
+    </complexType>
+
+    <element name="Transforms" type="ds:TransformsType"/>
+    <complexType name="TransformsType">
+        <sequence>
+            <element ref="ds:Transform" maxOccurs="unbounded"/>
+        </sequence>
+    </complexType>
+
+    <element name="Transform" type="ds:TransformType"/>
+    <complexType name="TransformType" mixed="true">
+        <choice minOccurs="0" maxOccurs="unbounded">
+            <any namespace="##other" processContents="lax"/>
+            <!-- (1,1) elements from (0,unbounded) namespaces -->
+            <element name="XPath" type="string"/>
+        </choice>
+        <attribute name="Algorithm" type="anyURI" use="required"/>
+    </complexType>
+
+    <!-- End Reference -->
+
+    <element name="DigestMethod" type="ds:DigestMethodType"/>
+    <complexType name="DigestMethodType" mixed="true">
+        <sequence>
+            <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+        </sequence>
+        <attribute name="Algorithm" type="anyURI" use="required"/>
+    </complexType>
+
+    <element name="DigestValue" type="ds:DigestValueType"/>
+    <simpleType name="DigestValueType">
+        <restriction base="base64Binary"/>
+    </simpleType>
+
+    <!-- End SignedInfo -->
+
+    <!-- Start KeyInfo -->
+
+    <element name="KeyInfo" type="ds:KeyInfoType"/>
+    <complexType name="KeyInfoType" mixed="true">
+        <choice maxOccurs="unbounded">
+            <element ref="ds:KeyName"/>
+            <element ref="ds:KeyValue"/>
+            <element ref="ds:RetrievalMethod"/>
+            <element ref="ds:X509Data"/>
+            <element ref="ds:PGPData"/>
+            <element ref="ds:SPKIData"/>
+            <element ref="ds:MgmtData"/>
+            <any processContents="lax" namespace="##other"/>
+            <!-- (1,1) elements from (0,unbounded) namespaces -->
+        </choice>
+        <attribute name="Id" type="ID" use="optional"/>
+    </complexType>
+
+    <element name="KeyName" type="string"/>
+    <element name="MgmtData" type="string"/>
+
+    <element name="KeyValue" type="ds:KeyValueType"/>
+    <complexType name="KeyValueType" mixed="true">
+        <choice>
+            <element ref="ds:DSAKeyValue"/>
+            <element ref="ds:RSAKeyValue"/>
+            <any namespace="##other" processContents="lax"/>
+        </choice>
+    </complexType>
+
+    <element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
+    <complexType name="RetrievalMethodType">
+        <sequence>
+            <element ref="ds:Transforms" minOccurs="0"/>
+        </sequence>
+        <attribute name="URI" type="anyURI"/>
+        <attribute name="Type" type="anyURI" use="optional"/>
+    </complexType>
+
+    <!-- Start X509Data -->
+
+    <element name="X509Data" type="ds:X509DataType"/>
+    <complexType name="X509DataType">
+        <sequence maxOccurs="unbounded">
+            <choice>
+                <element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
+                <element name="X509SKI" type="base64Binary"/>
+                <element name="X509SubjectName" type="string"/>
+                <element name="X509Certificate" type="base64Binary"/>
+                <element name="X509CRL" type="base64Binary"/>
+                <any namespace="##other" processContents="lax"/>
+            </choice>
+        </sequence>
+    </complexType>
+
+    <complexType name="X509IssuerSerialType">
+        <sequence>
+            <element name="X509IssuerName" type="string"/>
+            <element name="X509SerialNumber" type="integer"/>
+        </sequence>
+    </complexType>
+
+    <!-- End X509Data -->
+
+    <!-- Begin PGPData -->
+
+    <element name="PGPData" type="ds:PGPDataType"/>
+    <complexType name="PGPDataType">
+        <choice>
+            <sequence>
+                <element name="PGPKeyID" type="base64Binary"/>
+                <element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/>
+                <any namespace="##other" processContents="lax" minOccurs="0"
+                     maxOccurs="unbounded"/>
+            </sequence>
+            <sequence>
+                <element name="PGPKeyPacket" type="base64Binary"/>
+                <any namespace="##other" processContents="lax" minOccurs="0"
+                     maxOccurs="unbounded"/>
+            </sequence>
+        </choice>
+    </complexType>
+
+    <!-- End PGPData -->
+
+    <!-- Begin SPKIData -->
+
+    <element name="SPKIData" type="ds:SPKIDataType"/>
+    <complexType name="SPKIDataType">
+        <sequence maxOccurs="unbounded">
+            <element name="SPKISexp" type="base64Binary"/>
+            <any namespace="##other" processContents="lax" minOccurs="0"/>
+        </sequence>
+    </complexType>
+
+    <!-- End SPKIData -->
+
+    <!-- End KeyInfo -->
+
+    <!-- Start Object (Manifest, SignatureProperty) -->
+
+    <element name="Object" type="ds:ObjectType"/>
+    <complexType name="ObjectType" mixed="true">
+        <sequence minOccurs="0" maxOccurs="unbounded">
+            <any namespace="##any" processContents="lax"/>
+        </sequence>
+        <attribute name="Id" type="ID" use="optional"/>
+        <attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet -->
+        <attribute name="Encoding" type="anyURI" use="optional"/>
+    </complexType>
+
+    <element name="Manifest" type="ds:ManifestType"/>
+    <complexType name="ManifestType">
+        <sequence>
+            <element ref="ds:Reference" maxOccurs="unbounded"/>
+        </sequence>
+        <attribute name="Id" type="ID" use="optional"/>
+    </complexType>
+
+    <element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
+    <complexType name="SignaturePropertiesType">
+        <sequence>
+            <element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
+        </sequence>
+        <attribute name="Id" type="ID" use="optional"/>
+    </complexType>
+
+    <element name="SignatureProperty" type="ds:SignaturePropertyType"/>
+    <complexType name="SignaturePropertyType" mixed="true">
+        <choice maxOccurs="unbounded">
+            <any namespace="##other" processContents="lax"/>
+            <!-- (1,1) elements from (1,unbounded) namespaces -->
+        </choice>
+        <attribute name="Target" type="anyURI" use="required"/>
+        <attribute name="Id" type="ID" use="optional"/>
+    </complexType>
+
+    <!-- End Object (Manifest, SignatureProperty) -->
+
+    <!-- Start Algorithm Parameters -->
+
+    <simpleType name="HMACOutputLengthType">
+        <restriction base="integer"/>
+    </simpleType>
+
+    <!-- Start KeyValue Element-types -->
+
+    <element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
+    <complexType name="DSAKeyValueType">
+        <sequence>
+            <sequence minOccurs="0">
+                <element name="P" type="ds:CryptoBinary"/>
+                <element name="Q" type="ds:CryptoBinary"/>
+            </sequence>
+            <element name="G" type="ds:CryptoBinary" minOccurs="0"/>
+            <element name="Y" type="ds:CryptoBinary"/>
+            <element name="J" type="ds:CryptoBinary" minOccurs="0"/>
+            <sequence minOccurs="0">
+                <element name="Seed" type="ds:CryptoBinary"/>
+                <element name="PgenCounter" type="ds:CryptoBinary"/>
+            </sequence>
+        </sequence>
+    </complexType>
+
+    <element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
+    <complexType name="RSAKeyValueType">
+        <sequence>
+            <element name="Modulus" type="ds:CryptoBinary"/>
+            <element name="Exponent" type="ds:CryptoBinary"/>
+        </sequence>
+    </complexType>
+
+    <!-- End KeyValue Element-types -->
+
+    <!-- End Signature -->
+
+</schema>
\ No newline at end of file
diff --git a/components/camel-cxf/camel-cxf-spring-all/pom.xml b/components/camel-cxf/camel-cxf-spring-all/pom.xml
index a47fd3166..dbcaf9024 100644
--- a/components/camel-cxf/camel-cxf-spring-all/pom.xml
+++ b/components/camel-cxf/camel-cxf-spring-all/pom.xml
@@ -31,8 +31,10 @@
     <artifactId>camel-cxf-spring-all</artifactId>
     <packaging>bundle</packaging>
     <name>Apache Camel :: Karaf :: Components :: CXF :: Spring All in one</name>
+    <version>${revision}</version>
 
     <properties>
+        <revision>${camel-cxf.tesb.version}</revision>
         <camel.osgi.export>
             org.apache.camel.component.cxf.spring;version=${camel-version},
             org.apache.camel.component.cxf.spring.jaxrs;version=${camel-version},
@@ -46,7 +48,7 @@
             org.springframework.core*;version="${camel-osgi-spring-version}",
             org.springframework.util*;version="${camel-osgi-spring-version}",
             org.springframework.web*;version="${camel-osgi-spring-version}",
-            org.apache.cxf.*;version="${camel-osgi-cxf-version}",
+            org.apache.cxf.*;version="${camel-osgi-cxf.tesb.version}",
             jakarta.activation;version="${camel-osgi-jakarta-activation-version}",
             jakarta.annotation;version="${camel-osgi-jakarta-annotation-version}",
             jakarta.xml.ws*;version="${camel-osgi-jakarta-xml-ws-version}",
@@ -64,7 +66,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-spring-common</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -75,7 +77,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-spring-rest</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -86,7 +88,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-spring-soap</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
@@ -97,7 +99,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-spring-transport</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.apache.camel</groupId>
diff --git a/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml b/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml
index 34252baf7..90f6e6431 100644
--- a/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml
+++ b/components/camel-cxf/camel-cxf-transport-blueprint/pom.xml
@@ -30,14 +30,16 @@
     <artifactId>camel-cxf-transport-blueprint</artifactId>
     <packaging>bundle</packaging>
     <name>Apache Camel :: Karaf :: Components :: CXF ::  Transport Blueprint</name>
+    <version>${revision}</version>
 
     <properties>
+        <revision>${camel-cxf.tesb.version}</revision>
         <firstVersion>3.2.0</firstVersion>
         <camel.osgi.export>
             org.apache.camel.component.cxf.transport.blueprint;version=${upstream.version},
         </camel.osgi.export>
         <camel-osgi-camel-import>
-            org.apache.camel.component.cxf.helpers;${camel-osgi-import-camel-version},
+            org.apache.camel.component.cxf.blueprint.helpers;${camel-osgi-import-camel-version},
         </camel-osgi-camel-import>
         <camel.osgi.import>
             jakarta.xml.bind*;version="${camel-osgi-jakarta-bind-version}",
@@ -50,7 +52,7 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-cxf-transport</artifactId>
-            <version>${camel-version}</version>
+            <version>${camel-cxf.tesb.version}</version>
         </dependency>
 
         <!-- OSGi, Blueprint -->
@@ -64,13 +66,13 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-cxf-blueprint</artifactId>
-            <version>${upstream.version}</version>
+            <version>${camel-cxf.tesb.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-cxf-all</artifactId>
-            <version>${upstream.version}</version>
+            <version>${camel-cxf-all.tesb.version}</version>
             <scope>provided</scope>
             <optional>true</optional>
         </dependency>
diff --git a/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/AbstractBeanDefinitionParser.java b/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/AbstractBeanDefinitionParser.java
index 554e5c063..2f098a251 100644
--- a/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/AbstractBeanDefinitionParser.java
+++ b/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/AbstractBeanDefinitionParser.java
@@ -24,7 +24,7 @@ import org.w3c.dom.NamedNodeMap;
 
 import org.apache.aries.blueprint.ParserContext;
 import org.apache.aries.blueprint.mutable.MutableBeanMetadata;
-import org.apache.camel.component.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
+import org.apache.camel.component.cxf.blueprint.configuration.AbstractBPBeanDefinitionParser;
 import org.apache.cxf.common.util.StringUtils;
 import org.osgi.service.blueprint.reflect.BeanMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
@@ -66,7 +66,6 @@ public class AbstractBeanDefinitionParser extends AbstractBPBeanDefinitionParser
         for (int i = 0; i < atts.getLength(); i++) {
             Attr node = (Attr) atts.item(i);
             String val = node.getValue();
-            //String pre = node.getPrefix();
             String name = node.getLocalName();
             if ("camelContextId".equals(name)) {
                 camelContextId = val;
diff --git a/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/CamelTransportNameSpaceHandler.java b/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/CamelTransportNameSpaceHandler.java
index e8c977e8c..8b0e59062 100644
--- a/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/CamelTransportNameSpaceHandler.java
+++ b/components/camel-cxf/camel-cxf-transport-blueprint/src/main/java/org/apache/camel/component/cxf/transport/blueprint/CamelTransportNameSpaceHandler.java
@@ -17,15 +17,13 @@
 package org.apache.camel.component.cxf.transport.blueprint;
 
 import java.net.URL;
-import java.util.Arrays;
-import java.util.HashSet;
 import java.util.Set;
 
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 
 import org.apache.aries.blueprint.ParserContext;
-import org.apache.camel.component.cxf.helpers.BaseNamespaceHandler;
+import org.apache.camel.component.cxf.blueprint.helpers.BaseNamespaceHandler;
 import org.osgi.service.blueprint.reflect.ComponentMetadata;
 import org.osgi.service.blueprint.reflect.Metadata;
 import org.slf4j.Logger;
@@ -42,7 +40,7 @@ public class CamelTransportNameSpaceHandler extends BaseNamespaceHandler {
     @Override
     @SuppressWarnings("rawtypes")
     public Set<Class> getManagedClasses() {
-        return new HashSet<>(Arrays.asList(CamelTransportNameSpaceHandler.class));
+        return Set.of(CamelTransportNameSpaceHandler.class);
     }
 
     @Override
@@ -62,7 +60,7 @@ public class CamelTransportNameSpaceHandler extends BaseNamespaceHandler {
             answer = new CamelConduitDefinitionParser().parse(element, context);
         }
         if ("destination".equals(s)) {
-            LOG.debug("parsing the detination element");
+            LOG.debug("parsing the destination element");
             answer = new CamelDestinationDefinitionParser().parse(element, context);
         }
         return answer;
diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index 74f43409f..f45c77880 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -275,9 +275,9 @@
     </feature>
 
     <!-- Wrapped zookeeper jars. -->
-    <feature name='zookeeper-core' version='${zookeeper-version}' start-level='50'>
-        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Bundle-SymbolicName=org.apache.zookeeper&amp;Bundle-Version=${zookeeper-version}&amp;Export-Package=org.apache.zookeeper;version=${zookeeper-version},org.apache.zookeeper.*;version=${zookeeper-version}</bundle>
-        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper-jute/${zookeeper-version}$Bundle-SymbolicName=org.apache.zookeeper-jute&amp;Bundle-Version=${zookeeper-version}&amp;Fragment-Host=org.apache.zookeeper&amp;Export-Package=org.apache.jute;version=${zookeeper-version},org.apache.zookeeper.*;version=${zookeeper-version}</bundle>
+    <feature name='zookeeper-core' version='${zookeeper.tesb.version}' start-level='50'>
+        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-server.tesb.version}$Bundle-SymbolicName=org.apache.zookeeper&amp;Bundle-Version=${zookeeper.tesb.version}&amp;Export-Package=org.apache.zookeeper;version=${zookeeper.tesb.version},org.apache.zookeeper.*;version=${zookeeper.tesb.version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper-jute/${zookeeper.tesb.version}$Bundle-SymbolicName=org.apache.zookeeper-jute&amp;Bundle-Version=${zookeeper.tesb.version}&amp;Fragment-Host=org.apache.zookeeper&amp;Export-Package=org.apache.jute;version=${zookeeper.tesb.version},org.apache.zookeeper.*;version=${zookeeper.tesb.version}</bundle>
     </feature>
 
     <!-- Apache Camel core features -->
@@ -353,7 +353,7 @@
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature>aries-blueprint</feature>
         <bundle>mvn:org.apache.camel.karaf/camel-core-xml/${upstream.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-blueprint/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-blueprint/${camel-blueprint.tesb.version}</bundle>
     </feature>
     <feature name='camel-spring' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-spring-version}'>spring</feature>
@@ -760,15 +760,11 @@
     <feature name='camel-bonita' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <feature version="[5,6)">jakarta-servlet</feature>
         <feature version="[3,4)">jaxb-runtime</feature>
+        <feature version="[4,5)">camel-cxf</feature>
         <bundle dependency="true">mvn:org.apache.ws.xmlschema/xmlschema-core/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-core/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-security/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-frontend-jaxrs/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-transports-http/${cxf-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-bonita/${upstream.version}</bundle>
     </feature>
     <feature name='camel-box' version='${upstream.version}' start-level='50'>
@@ -936,6 +932,7 @@
         <feature version="[6,7)">jakarta-servlet</feature>
         <feature version="${camel-osgi-jakarta-jws-version}">jakarta-jws</feature>
         <feature version="[3,4)">jakarta-validation</feature>
+        <bundle dependency="true">mvn:org.ops4j.pax.web/pax-web-api/${tesb-pax-web-api-version}</bundle>
         <bundle dependency="true">mvn:org.glassfish.hk2/osgi-resource-locator/${osgi-resource-locator-version}</bundle>
         <bundle dependency="true">mvn:org.apache.neethi/neethi/${auto-detect-version}</bundle>
         <bundle dependency="true">mvn:org.apache.ws.xmlschema/xmlschema-core/${auto-detect-version}</bundle>
@@ -945,13 +942,13 @@
         <bundle>mvn:org.apache.camel.karaf/camel-http-base/${upstream.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-http-common/${upstream.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-cxf-all/${camel-cxf-all.tesb.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cxf-blueprint/${upstream.version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-cxf-transport-blueprint/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cxf-blueprint/${camel-cxf.tesb.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cxf-transport-blueprint/${camel-cxf.tesb.version}</bundle>
     </feature>
     <feature name='camel-cxf-spring' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cxf</feature>
         <feature version='${camel-osgi-version-range}'>camel-spring</feature>
-        <bundle>mvn:org.apache.camel.karaf/camel-cxf-spring-all/${upstream.version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-cxf-spring-all/${camel-cxf.tesb.version}</bundle>
     </feature>
     <feature name='camel-datasonnet' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
@@ -1768,16 +1765,6 @@
     <feature name="camel-jms" version="${upstream.version}" start-level="50">
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${camel-osgi-spring-version}">spring-jms</feature>
-        <!-- The SMX bundle of Spring JMS doesn't contain micrometer as part of its import packages, see https://issues.apache.org/jira/browse/SM-5706,
-            so we need to override the imports by wrapping the bundle until it is fixed in the SMX bundle project and in Karaf.
-            The Bundle-Version is updated by Bundle-Version=${spring-version}.2 so that the updated bundle is used
-            instead of the one provided by Karaf.
-        -->
-        <!-- Workaround START -->
-        <bundle start-level="30">wrap:mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jms/${servicemix-spring-jms-version}_1$overwrite=merge&amp;Import-package=io.micrometer;resolution:=optional,*;resolution:=optional&amp;Bundle-Version=${servicemix-spring-jms-version}.2</bundle>
-        <!-- Workaround END -->
-        <bundle dependency='true'>mvn:io.micrometer/micrometer-observation/${micrometer-version}</bundle>
-        <bundle dependency='true'>mvn:io.micrometer/micrometer-commons/${micrometer-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-jms/${upstream.version}</bundle>
     </feature>
     <feature name='camel-jmx' version='${upstream.version}' start-level='50'>
@@ -2650,19 +2637,15 @@
     <feature name='camel-servicenow' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-version-range}'>camel-cxf</feature>
+        <feature version="[4,5)">jaxb-runtime</feature>
         <feature version="[5,6)">jakarta-servlet</feature>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.ws.xmlschema/xmlschema-core/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-core/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-client/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-oauth2/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-frontend-jaxrs/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-security/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-transports-http/${cxf-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-json-basic/${cxf-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-oauth2/${cxf.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-jose-jaxrs/${cxf-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-jose/${cxf-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-servicenow/${upstream.version}</bundle>
diff --git a/pom.xml b/pom.xml
index 041346d2b..09b224e35 100644
--- a/pom.xml
+++ b/pom.xml
@@ -90,13 +90,16 @@
         <upstream.version>4.8.1</upstream.version>
         <camel-features.tesb.version>4.8.1.20240820</camel-features.tesb.version>
         <camel-support.tesb.version>4.8.1.20240820</camel-support.tesb.version>
+        <camel-cxf.tesb.version>4.8.1.20240820</camel-cxf.tesb.version>
         <camel-cxf-all.tesb.version>4.8.1.20240820</camel-cxf-all.tesb.version>
         <camel-cxf-soap.tesb.version>4.8.1.20240820</camel-cxf-soap.tesb.version>
         <camel-cxf-rest.tesb.version>4.8.1.20240820</camel-cxf-rest.tesb.version>
         <camel-spring.tesb.version>4.8.1.20240820</camel-spring.tesb.version>
+        <camel-blueprint.tesb.version>4.8.1.20240820</camel-blueprint.tesb.version>
 
+        <cxf.tesb.version>4.1.0.20241216</cxf.tesb.version>
         <jetty11.tesb.version>11.0.21</jetty11.tesb.version>
-        <jetty12.tesb.version>12.0.10</jetty12.tesb.version>
+        <jetty12.tesb.version>12.0.15</jetty12.tesb.version>
         <jetty.tesb.version>${jetty12.tesb.version}</jetty.tesb.version>
         <jetty11.tesb.version-range>[11,12)</jetty11.tesb.version-range>
         <jetty12.tesb.version-range>[12,13)</jetty12.tesb.version-range>
@@ -109,6 +112,10 @@
         <jaxb-fastinfoset.tesb.version>2.1.1</jaxb-fastinfoset.tesb.version>
         <jaxb-staxex.tesb.version>2.1.0</jaxb-staxex.tesb.version>
         <jaxb-dtd-parser.tesb.version>1.5.1</jaxb-dtd-parser.tesb.version>
+        <zookeeper.tesb.version>3.9.3</zookeeper.tesb.version>
+        <zookeeper-server.tesb.version>3.9.3.jetty12.1</zookeeper-server.tesb.version>
+        <camel-osgi-cxf.tesb.version>[4.1,4.2)</camel-osgi-cxf.tesb.version>
+        <camel-osgi-jetty.tesb.version>[12,13)</camel-osgi-jetty.tesb.version>
 
         <jdk-version>17</jdk-version>
         <maven.compiler.source>${jdk-version}</maven.compiler.source>
@@ -184,10 +191,10 @@
         <consul-client-version>1.4.1</consul-client-version>
         <couchbase-client-version>3.7.2</couchbase-client-version>
         <curator-version>5.7.0</curator-version>
-        <cxf-version>4.0.5</cxf-version>
-        <cxf-codegen-plugin-version>4.0.5</cxf-codegen-plugin-version>
-        <cxf-xjc-plugin-version>4.0.2</cxf-xjc-plugin-version>
-        <cxf-xjc-utils-version>4.0.2</cxf-xjc-utils-version>
+        <cxf-version>4.1.0</cxf-version>
+        <cxf-codegen-plugin-version>4.1.0</cxf-codegen-plugin-version>
+        <cxf-xjc-plugin-version>4.1.0</cxf-xjc-plugin-version>
+        <cxf-xjc-utils-version>4.1.0</cxf-xjc-utils-version>
         <datasonnet-mapper-version>2.5.2-jakarta4</datasonnet-mapper-version>
         <debezium-version>2.7.1.Final</debezium-version>
         <debezium-mysql-connector-version>8.4.0</debezium-mysql-connector-version>
@@ -479,7 +486,7 @@
         <spring-data-redis-version>3.3.3</spring-data-redis-version>
         <spring-ldap-version>3.2.6</spring-ldap-version>
         <spring-vault-core-version>3.1.2</spring-vault-core-version>
-        <spring-version>6.1.12</spring-version>
+        <spring-version>6.1.13</spring-version>
         <spring-rabbitmq-version>3.1.7</spring-rabbitmq-version>
         <spring-security-version>6.3.3</spring-security-version>
         <spring-ws-version>4.0.11</spring-ws-version>
@@ -550,7 +557,7 @@
         <camel-osgi-spring-version>[6.1,6.2)</camel-osgi-spring-version>
         <camel-osgi-saaj-version>[2,4)</camel-osgi-saaj-version>
         <camel-osgi-slf4j-version>[2,3)</camel-osgi-slf4j-version>
-        <camel-osgi-cxf-version>[4.0,4.1)</camel-osgi-cxf-version>
+        <camel-osgi-cxf-version>[4.0,4.2)</camel-osgi-cxf-version>
 
         <!-- Camel Karaf OSGI version ranges -->
         <camel-osgi-version-clean>4.8</camel-osgi-version-clean>
@@ -598,12 +605,15 @@
         <osgi-resource-locator-version>2.5.0-b42</osgi-resource-locator-version>
         <osgi-service-event-version>1.4.1</osgi-service-event-version>
         <osgi-service-component-version>1.5.1</osgi-service-component-version>
+        <osgi-service-cm-version>1.6.1</osgi-service-cm-version>
+        <osgi-service-servlet-version>2.0.0</osgi-service-servlet-version>
         <osgi-version>8.0.0</osgi-version>
         <sal-api-version>5.1.4</sal-api-version>
         <servicemix-specs-version>10</servicemix-specs-version>
         <servicemix-spring-jms-version>6.1.6</servicemix-spring-jms-version>
         <slf4j-version>2.0.13</slf4j-version>
         <spring-amqp-version>3.1.7</spring-amqp-version>
+        <tesb-pax-web-api-version>9.99.0</tesb-pax-web-api-version>
 
         <!-- Plugin versions -->
         <maven-antrun-plugin-version>3.1.0</maven-antrun-plugin-version>
@@ -645,6 +655,16 @@
                 <artifactId>org.osgi.service.component.annotations</artifactId>
                 <version>${osgi-service-component-version}</version>
             </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.service.servlet</artifactId>
+                <version>${osgi-service-servlet-version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>org.osgi.service.cm</artifactId>
+                <version>${osgi-service-cm-version}</version>
+            </dependency>
             <dependency>
                 <groupId>org.apache.karaf.shell</groupId>
                 <artifactId>org.apache.karaf.shell.core</artifactId>
@@ -682,6 +702,12 @@
                 <version>${geronimo-atinject-version}</version>
                 <scope>test</scope>
             </dependency>
+            <!-- temporary dependency to get the HTTPService class , maybe later use the Whiteboard to rely only on the OSGI specs -->
+            <dependency>
+                <groupId>org.ops4j.pax.web</groupId>
+                <artifactId>pax-web-api</artifactId>
+                <version>${tesb-pax-web-api-version}</version>
+            </dependency>
         </dependencies>
     </dependencyManagement>
 
@@ -698,10 +724,12 @@
                             <upstream.version>${upstream.version}</upstream.version>
                             <camel.features.tesb.version>${camel.features.tesb.version}</camel.features.tesb.version>
                             <camel-support.tesb.version>${camel-support.tesb.version}</camel-support.tesb.version>
+                            <camel-cxf.tesb.version>${camel-cxf.tesb.version}</camel-cxf.tesb.version>
                             <camel-cxf-all.tesb.version>${camel-cxf-all.tesb.version}</camel-cxf-all.tesb.version>
                             <camel-cxf-soap.tesb.version>${camel-cxf-soap.tesb.version}</camel-cxf-soap.tesb.version>
                             <camel-cxf-rest.tesb.version>${camel-cxf-rest.tesb.version}</camel-cxf-rest.tesb.version>
                             <camel-spring.tesb.version>${camel-spring.tesb.version}</camel-spring.tesb.version>
+                            <cxf.tesb.version>${cxf.tesb.version}</cxf.tesb.version>
                             <jetty11.tesb.version>${jetty11.tesb.version}</jetty11.tesb.version>
                             <jetty12.tesb.version>${jetty12.tesb.version}</jetty12.tesb.version>
                             <jetty.tesb.version>${jetty.tesb.version}</jetty.tesb.version>
@@ -716,6 +744,8 @@
                             <jaxb-fastinfoset.tesb.version>${jaxb-fastinfoset.tesb.version}</jaxb-fastinfoset.tesb.version>
                             <jaxb-staxex.tesb.version>${jaxb-staxex.tesb.version}</jaxb-staxex.tesb.version>
                             <jaxb-dtd-parser.tesb.version>${jaxb-dtd-parser.tesb.version}</jaxb-dtd-parser.tesb.version>
+                            <zookeeper.tesb.version>${zookeeper.tesb.version}</zookeeper.tesb.version>
+                            <zookeeper-server.tesb.version>${zookeeper-server.tesb.version}</zookeeper-server.tesb.version>
                         </properties>
                     </configuration>
                     <executions>
diff --git a/tests/features/camel-cometd/pom.xml b/tests/features/camel-cometd/pom.xml
index 0c9a9a0ec..8b7fc774b 100644
--- a/tests/features/camel-cometd/pom.xml
+++ b/tests/features/camel-cometd/pom.xml
@@ -28,52 +28,11 @@
     <artifactId>camel-cometd-test</artifactId>
     <name>Apache Camel :: Karaf :: Tests :: Features :: Cometd</name>
 
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <inherited>true</inherited>
-                <extensions>true</extensions>
-                <configuration>
-                    <instructions>
-                        <Export-Package>
-                            org.apache.karaf.camel.test;version=${upstream.version}
-                        </Export-Package>
-                        <Import-Package>
-                            !org.apache.karaf.camel.test,
-                            org.cometd.server.http,
-                            org.eclipse.jetty.ee10.servlet,
-                            org.apache.camel*;${camel-osgi-import-camel-version},
-                            *
-                        </Import-Package>
-                        <Fragment-Host>
-                             camel-integration-test
-                        </Fragment-Host>
-                    </instructions>
-                </configuration>
-                <executions>
-                    <execution>
-                        <id>cleanVersions</id>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>cleanVersions</goal>
-                        </goals>
-                        <configuration>
-                            <versions>
-                                <karaf.osgi.version>${upstream.version}</karaf.osgi.version>
-                            </versions>
-                        </configuration>
-                    </execution>
-                    <execution>
-                        <id>bundle</id>
-                        <phase>package</phase>
-                        <goals>
-                            <goal>bundle</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
+    <properties>
+        <camel.karaf.test.additional.imports>
+            org.cometd.server.http,
+            org.eclipse.jetty.ee10.servlet,
+        </camel.karaf.test.additional.imports>
+        <camel.karaf.test.fragment.host>camel-integration-test</camel.karaf.test.fragment.host>
+    </properties>
 </project>
\ No newline at end of file
diff --git a/tests/features/camel-cxf/pom.xml b/tests/features/camel-cxf/pom.xml
index d0aec9035..9810801be 100644
--- a/tests/features/camel-cxf/pom.xml
+++ b/tests/features/camel-cxf/pom.xml
@@ -28,6 +28,11 @@
     <artifactId>camel-cxf-test</artifactId>
     <name>Apache Camel :: Karaf :: Tests :: Features :: CXF</name>
 
+    <properties>
+        <camel.karaf.test.additional.imports>
+            org.apache.camel.component.cxf.jaxrs.blueprint,
+        </camel.karaf.test.additional.imports>
+    </properties>
     <dependencies>
         <dependency>
             <groupId>jakarta.ws.rs</groupId>
diff --git a/tests/features/camel-cxf/src/main/java/org/apache/karaf/camel/test/CamelCxfRsRouteSupplier.java b/tests/features/camel-cxf/src/main/java/org/apache/karaf/camel/test/CamelCxfRsRouteSupplier.java
index 1abbef7d8..838794d46 100644
--- a/tests/features/camel-cxf/src/main/java/org/apache/karaf/camel/test/CamelCxfRsRouteSupplier.java
+++ b/tests/features/camel-cxf/src/main/java/org/apache/karaf/camel/test/CamelCxfRsRouteSupplier.java
@@ -48,6 +48,12 @@ public class CamelCxfRsRouteSupplier implements CamelRouteSupplier {
             exchange.getMessage().setHeader(Exchange.HTTP_RESPONSE_CODE, 200);
         });
 
+        builder.from("direct-vm:getCustomer").process(exchange -> {
+            assertEquals("456", exchange.getIn().getHeader("id"));
+            exchange.getMessage().setBody(new Customer(456, "John"));
+            exchange.getMessage().setHeader(Exchange.HTTP_RESPONSE_CODE, 200);
+        });
+
         builder.from("direct:newCustomer").process(exchange -> {
             Customer c = exchange.getIn().getBody(Customer.class);
             assertNotNull(c);
diff --git a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/OSGI-INF/blueprint/camel-cxf.xml b/tests/features/camel-cxf/src/main/resources/OSGI-INF/blueprint/route.xml
similarity index 50%
rename from components/camel-cxf/camel-cxf-blueprint/src/main/resources/OSGI-INF/blueprint/camel-cxf.xml
rename to tests/features/camel-cxf/src/main/resources/OSGI-INF/blueprint/route.xml
index 27f64f88d..c7082fca5 100644
--- a/components/camel-cxf/camel-cxf-blueprint/src/main/resources/OSGI-INF/blueprint/camel-cxf.xml
+++ b/tests/features/camel-cxf/src/main/resources/OSGI-INF/blueprint/route.xml
@@ -8,23 +8,34 @@
     (the "License"); you may not use this file except in compliance with
     the License.  You may obtain a copy of the License at
 
-         http://www.apache.org/licenses/LICENSE-2.0
+       http://www.apache.org/licenses/LICENSE-2.0
 
     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-
 -->
 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">
+           xmlns:cxf="https://camel.apache.org/schema/blueprint/cxf"
+           xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0"
+           xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
+						https://camel.apache.org/schema/blueprint/cxf https://camel.apache.org/schema/blueprint/cxf/camel-cxf.xsd">
+
+    <!-- Allow the use of system properties -->
+    <ext:property-placeholder placeholder-prefix="$[" placeholder-suffix="]" />
+    <cxf:rsServer address="http://localhost:$[cxf.rs.blueprint.port]/rss" id="rss"
+                  loggingFeatureEnabled="true" loggingSizeLimit="2000"
+                  serviceClass="org.apache.karaf.camel.test.beans.CustomerService">
+    </cxf:rsServer>
 
-  <service interface="org.apache.aries.blueprint.NamespaceHandler">
-    <service-properties>
-      <entry key="osgi.service.blueprint.namespace" value="https://camel.apache.org/schema/blueprint/cxf"/>
-    </service-properties>
-    <bean class="org.apache.camel.component.cxf.blueprint.helpers.CxfNamespaceHandler"/>
-  </service>
-</blueprint>
+    <camelContext xmlns="http://camel.apache.org/schema/blueprint">
+        <route id="rss-route">
+            <from uri="cxfrs:bean:rss?bindingStyle=SimpleConsumer"/>
+            <recipientList>
+                <simple>direct-vm:${header.operationName}</simple>
+            </recipientList>
+        </route>
+    </camelContext>
+</blueprint>
\ No newline at end of file
diff --git a/tests/features/camel-cxf/src/test/java/org/apache/karaf/camel/itest/CamelCxfITest.java b/tests/features/camel-cxf/src/test/java/org/apache/karaf/camel/itest/CamelCxfITest.java
index 27c8afb94..049a8af34 100644
--- a/tests/features/camel-cxf/src/test/java/org/apache/karaf/camel/itest/CamelCxfITest.java
+++ b/tests/features/camel-cxf/src/test/java/org/apache/karaf/camel/itest/CamelCxfITest.java
@@ -47,7 +47,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.ops4j.pax.exam.OptionUtils.combine;
 
-@CamelKarafTestHint(externalResourceProvider = CamelCxfITest.ExternalResourceProviders.class,
+@CamelKarafTestHint(isBlueprintTest = true, externalResourceProvider = CamelCxfITest.ExternalResourceProviders.class,
         additionalRequiredFeatures = "camel-undertow")
 @RunWith(PaxExamWithExternalResource.class)
 @ExamReactorStrategy(PerClass.class)
@@ -79,8 +79,17 @@ public class CamelCxfITest extends AbstractCamelSingleFeatureRouteITest {
         testNewCustomerWithQueryParam();
     }
 
+    @Test
+    public void testCxfRsBlueprint() throws Exception {
+        testGetCustomerOnlyHeadersInBlueprint();
+    }
+
     private String getPortPathRs() {
-        return ExternalResourceProviders.getCxfRsPort() + "/CamelCxfRsRouteSupplier";
+        return ExternalResourceProviders.getCxfRsPort() + "/CamelCxfRsRouteSupplier/rest";
+    }
+
+    private String getPortPathRsBlueprint() {
+        return ExternalResourceProviders.getCxfRsBlueprintPort() + "/rss";
     }
 
     private String getWsEndpointAddress() {
@@ -107,8 +116,22 @@ public class CamelCxfITest extends AbstractCamelSingleFeatureRouteITest {
         );
     }
 
+    private void testGetCustomerOnlyHeadersInBlueprint() throws Exception {
+        URI uri = URI.create("http://localhost:%s/customerservice/customers/456".formatted(getPortPathRsBlueprint()));
+
+        HttpRequest request = HttpRequest.newBuilder()
+                .uri(uri)
+                .header("Accept", "text/xml")
+                .build();
+
+        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
+        assertEquals(200, response.statusCode());
+        Customer entity = (Customer) jaxb.createUnmarshaller().unmarshal(new StringReader(response.body()));
+        assertEquals(456, entity.getId());
+    }
+
     private void testGetCustomerOnlyHeaders() throws Exception {
-        URI uri = URI.create("http://localhost:%s/rest/customerservice/customers/123".formatted(getPortPathRs()));
+        URI uri = URI.create("http://localhost:%s/customerservice/customers/123".formatted(getPortPathRs()));
 
         HttpRequest request = HttpRequest.newBuilder()
                 .uri(uri)
@@ -122,7 +145,7 @@ public class CamelCxfITest extends AbstractCamelSingleFeatureRouteITest {
     }
 
     private void testNewCustomerWithQueryParam() throws Exception {
-        URI uri = URI.create("http://localhost:%s/rest/customerservice/customers?age=12".formatted(getPortPathRs()));
+        URI uri = URI.create("http://localhost:%s/customerservice/customers?age=12".formatted(getPortPathRs()));
         StringWriter sw = new StringWriter();
         jaxb.createMarshaller().marshal(new Customer(123, "Raul"), sw);
         HttpRequest request = HttpRequest.newBuilder()
@@ -147,7 +170,7 @@ public class CamelCxfITest extends AbstractCamelSingleFeatureRouteITest {
         HelloService helloService = (HelloService) proxyFactory.create();
 
         String result = helloService.echo(TEST_MESSAGE);
-        assertEquals("We should get the echo string result from router", result, "echo " + TEST_MESSAGE);
+        assertEquals("We should get the echo string result from router", "echo " + TEST_MESSAGE, result);
 
         Boolean bool = helloService.echoBoolean(Boolean.TRUE);
         assertNotNull("The result should not be null", bool);
@@ -182,16 +205,21 @@ public class CamelCxfITest extends AbstractCamelSingleFeatureRouteITest {
 
     public static final class ExternalResourceProviders {
         public static final String CXF_RS_PORT = "cxf.rs.port";
+        public static final String CXF_RS_BLUEPRINT_PORT = "cxf.rs.blueprint.port";
         public static final String CXF_WS_PORT = "cxf.ws.port";
 
         public static AvailablePortProvider createAvailablePortProvider() {
-            return new AvailablePortProvider(List.of(CXF_RS_PORT, CXF_WS_PORT));
+            return new AvailablePortProvider(List.of(CXF_RS_PORT, CXF_WS_PORT, CXF_RS_BLUEPRINT_PORT));
         }
 
         static String getCxfRsPort() {
             return System.getProperty(CXF_RS_PORT);
         }
 
+        static String getCxfRsBlueprintPort() {
+            return System.getProperty(CXF_RS_BLUEPRINT_PORT);
+        }
+
         static String getCxfWsPort() {
             return System.getProperty(CXF_WS_PORT);
         }
diff --git a/tests/features/pom.xml b/tests/features/pom.xml
index 1ef8ff474..63e8e54cb 100644
--- a/tests/features/pom.xml
+++ b/tests/features/pom.xml
@@ -33,6 +33,8 @@
     <name>Apache Camel :: Karaf :: Tests :: Features</name>
 
     <properties>
+        <camel.karaf.test.additional.imports/>
+        <camel.karaf.test.fragment.host/>
         <dump.logs.on.failure>false</dump.logs.on.failure>
         <keep.docker.images.on.exit>false</keep.docker.images.on.exit>
         <users.file.location>${project.basedir}/../../camel-integration-test/src/main/resources/etc/users.properties</users.file.location>
@@ -255,9 +257,12 @@
                             org.apache.karaf.camel.test*;version=${upstream.version}
                         </Export-Package>
                         <Import-Package>
+                            !org.apache.karaf.camel.test,
+                            ${camel.karaf.test.additional.imports}
                             org.apache.camel*;${camel-osgi-import-camel-version},
                             *
                         </Import-Package>
+                        <Fragment-Host>${camel.karaf.test.fragment.host}</Fragment-Host>
                     </instructions>
                 </configuration>
                 <executions>


(camel-karaf) 04/12: DPE-570 Update of vulnerable dependencies.

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit bd55c1e2ccbb5aee2739fb0a359862f84e9b28fd
Author: Andreas Mattes <an...@fastmail.de>
AuthorDate: Mon Dec 30 16:43:49 2024 +0100

    DPE-570 Update of vulnerable dependencies.
    
    kudu-client 1.78.0 -> 1.78.1 - CVE-2024-7254 from embedded protobuf
    protobuf 3.25.2 -> 3.25.5 - CVE-2024-7254
    pulsar 3.3.1 -> 3.3.3 - CVE-2024-47554 from embedded commons-io
    velocity 2.3 -> 2.4.1 - CVE-2024-47554 from embedded commons-io
    jython-standalone 2.7.3 -> 2.7.4 - CVE-2024-25710 from embedded commons-compress
    mina 2.2.3 -> 2.2.4 CVE-2024-52046
    wildfly-elytron 2.2.2 -> 2.2.7 - CVE-2024-41909 from embedded sshd-common
    async-http-client 2.12.3 -> 2.12.4 - CVE-2024-53990
---
 features/src/main/feature/camel-features.xml | 30 ++++++++++++++--------------
 pom.xml                                      | 16 +++++++++++++++
 2 files changed, 31 insertions(+), 15 deletions(-)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index 11a12cc55..0fbdf0ecc 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -413,7 +413,7 @@
         <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpclient-version}$Bundle-SymbolicName=org.apache.httpcore5.h2&amp;Bundle-Version=${httpclient-version}</bundle>
         <!-- Wrap protocol used to export a private package that is used by camel-as2  -->
         <bundle dependency='true'>wrap:mvn:org.bouncycastle/bcutil-jdk18on/${bouncycastle-version}$overwrite=merge&amp;Export-Package=org.bouncycastle.*;version=${bouncycastle-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.velocity/velocity-engine-core/${velocity-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.velocity/velocity-engine-core/${velocity.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-as2/${upstream.version}</bundle>
     </feature>
@@ -1010,8 +1010,8 @@
         <!-- Use the wrap protocol to make org.antlr.v4.gui optional-->
         <bundle>wrap:mvn:org.antlr/antlr4-runtime/${auto-detect-version}$overwrite=merge&amp;Import-Package=org.antlr.v4.gui*;resolution:=optional,*</bundle>
         <bundle>wrap:mvn:io.debezium/debezium-storage-kafka/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java-util/${auto-detect-version}</bundle>
+        <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java-util/${protobuf.tesb.version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.oracle.database.nls/orai18n/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.oracle.database.jdbc/ojdbc8/${auto-detect-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-debezium-oracle/${upstream.version}</bundle>
@@ -1020,7 +1020,7 @@
         <feature version='${camel-osgi-version-range}'>camel-debezium-common</feature>
         <bundle dependency='true'>wrap:mvn:io.debezium/debezium-connector-postgres/${debezium-version}</bundle>
         <bundle dependency='true'>mvn:org.postgresql/postgresql/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${auto-detect-version}</bundle>
+        <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-debezium-postgres/${upstream.version}</bundle>
     </feature>
     <feature name='camel-debezium-sqlserver' version='${upstream.version}' start-level='50'>
@@ -1146,7 +1146,7 @@
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-undertow</feature>
         <bundle dependency='true'>wrap:mvn:org.wildfly.security.elytron-web/undertow-server/${elytron-web}</bundle>
-        <bundle dependency='true'>wrap:mvn:org.wildfly.security/wildfly-elytron/${wildfly-elytron}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.wildfly.security/wildfly-elytron/${wildfly-elytron.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-elytron/${upstream.version}</bundle>
     </feature>
     <feature name='camel-etcd3' version='${upstream.version}' start-level='50'>
@@ -1501,7 +1501,7 @@
     <feature name='camel-hl7' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-netty</feature>
         <bundle dependency='true'>wrap:mvn:ca.uhn.hapi/hapi-base/${hapi-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-hl7/${upstream.version}</bundle>
     </feature>
     <feature name='camel-http' version='${upstream.version}' start-level='50'>
@@ -1946,7 +1946,7 @@
     </feature>
     <feature name='camel-kudu' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle dependency='true'>wrap:mvn:org.apache.kudu/kudu-client/${kudu-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.apache.kudu/kudu-client/${kudu.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-kudu/${upstream.version}</bundle>
     </feature>
     <feature name='camel-langchain4j-chat' version='${upstream.version}' start-level='50'>
@@ -2004,7 +2004,7 @@
         <bundle dependency='true'>mvn:org.apache.commons/commons-collections4/${commons-collections4-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-pool2/${commons-pool2-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-ldif/${upstream.version}</bundle>
     </feature>
     <feature name='camel-leveldb' version='${upstream.version}' start-level='50'>
@@ -2141,7 +2141,7 @@
     </feature>
     <feature name='camel-mina' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${auto-detect-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-mina/${upstream.version}</bundle>
     </feature>
     <feature name='camel-minio' version='${upstream.version}' start-level='50'>
@@ -2457,7 +2457,7 @@
     </feature>
     <feature name='camel-pulsar' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle dependency='true'>wrap:mvn:org.apache.pulsar/pulsar-client-admin/${pulsar-version}$Export-Package=org.apache.pulsar*;version=${pulsar-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.apache.pulsar/pulsar-client-admin/${pulsar.tesb.version}$Export-Package=org.apache.pulsar*;version=${pulsar.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-pulsar/${upstream.version}</bundle>
     </feature>
     <feature name='camel-python' version='${upstream.version}' start-level='50'>
@@ -2489,7 +2489,7 @@
         <feature version='${upstream.version}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.quickfixj/quickfixj-core/${quickfixj-version}</bundle>
         <bundle dependency='true'>mvn:org.quickfixj/quickfixj-messages-all/${quickfixj-version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-quickfix/${upstream.version}</bundle>
     </feature>
     <feature name='camel-reactive-executor-tomcat' version='${upstream.version}' start-level='50'>
@@ -2564,7 +2564,7 @@
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.robotframework/robotframework/${robotframework-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.python/jython/${jython-version}</bundle>
-        <bundle dependency='true'>wrap:mvn:org.python/jython-standalone/${jython-standalone-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:org.python/jython-standalone/${jython-standalone.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-robotframework/${upstream.version}</bundle>
     </feature>
     <feature name='camel-rocketmq' version='${upstream.version}' start-level='50'>
@@ -3007,7 +3007,7 @@
     </feature>
     <feature name='camel-velocity' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <bundle dependency='true'>mvn:org.apache.velocity/velocity-engine-core/${velocity-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.velocity/velocity-engine-core/${velocity.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-velocity/${upstream.version}</bundle>
     </feature>
@@ -3117,8 +3117,8 @@
     <feature name='camel-zendesk' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
-        <bundle dependency='true'>mvn:org.asynchttpclient/async-http-client/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:org.asynchttpclient/async-http-client-netty-utils/${auto-detect-version}</bundle>
+        <bundle dependency='true'>mvn:org.asynchttpclient/async-http-client/${async-http-client.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:org.asynchttpclient/async-http-client-netty-utils/${async-http-client.tesb.version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.cloudbees.thirdparty/zendesk-java-client/${zendesk-client-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-handler-proxy/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-http/${netty-version}</bundle>
diff --git a/pom.xml b/pom.xml
index 09b224e35..922054a83 100644
--- a/pom.xml
+++ b/pom.xml
@@ -104,6 +104,7 @@
         <jetty11.tesb.version-range>[11,12)</jetty11.tesb.version-range>
         <jetty12.tesb.version-range>[12,13)</jetty12.tesb.version-range>
         <jetty.tesb.version-range>${jetty12.tesb.version-range}</jetty.tesb.version-range>
+        <async-http-client.tesb.version>2.12.4</async-http-client.tesb.version>
         <jaxb3-istack.tesb.version>4.0.1</jaxb3-istack.tesb.version>
         <jaxb3-fastinfoset.tesb.version>2.0.0</jaxb3-fastinfoset.tesb.version>
         <jaxb3-staxex.tesb.version>2.0.1</jaxb3-staxex.tesb.version>
@@ -112,6 +113,13 @@
         <jaxb-fastinfoset.tesb.version>2.1.1</jaxb-fastinfoset.tesb.version>
         <jaxb-staxex.tesb.version>2.1.0</jaxb-staxex.tesb.version>
         <jaxb-dtd-parser.tesb.version>1.5.1</jaxb-dtd-parser.tesb.version>
+        <jython-standalone.tesb.version>${jython-version}</jython-standalone.tesb.version>
+        <kudu.tesb.version>1.17.1</kudu.tesb.version>
+        <mina.tesb.version>2.2.4</mina.tesb.version>
+        <protobuf.tesb.version>3.25.5</protobuf.tesb.version>
+        <pulsar.tesb.version>3.3.3</pulsar.tesb.version>
+        <velocity.tesb.version>2.4.1</velocity.tesb.version>
+        <wildfly-elytron.tesb.version>2.2.7.Final</wildfly-elytron.tesb.version>
         <zookeeper.tesb.version>3.9.3</zookeeper.tesb.version>
         <zookeeper-server.tesb.version>3.9.3.jetty12.1</zookeeper-server.tesb.version>
         <camel-osgi-cxf.tesb.version>[4.1,4.2)</camel-osgi-cxf.tesb.version>
@@ -736,6 +744,7 @@
                             <jetty11.tesb.version-range>${jetty11.tesb.version-range}</jetty11.tesb.version-range>
                             <jetty12.tesb.version-range>${jetty12.tesb.version-range}</jetty12.tesb.version-range>
                             <jetty.tesb.version-range>${jetty.tesb.version-range}</jetty.tesb.version-range>
+                            <async-http-client.tesb.version>${async-http-client.tesb.version}</async-http-client.tesb.version>
                             <jaxb3-istack.tesb.version>${jaxb3-istack.tesb.version}</jaxb3-istack.tesb.version>
                             <jaxb3-fastinfoset.tesb.version>${jaxb3-fastinfoset.tesb.version}</jaxb3-fastinfoset.tesb.version>
                             <jaxb3-staxex.tesb.version>${jaxb3-staxex.tesb.version}</jaxb3-staxex.tesb.version>
@@ -744,6 +753,13 @@
                             <jaxb-fastinfoset.tesb.version>${jaxb-fastinfoset.tesb.version}</jaxb-fastinfoset.tesb.version>
                             <jaxb-staxex.tesb.version>${jaxb-staxex.tesb.version}</jaxb-staxex.tesb.version>
                             <jaxb-dtd-parser.tesb.version>${jaxb-dtd-parser.tesb.version}</jaxb-dtd-parser.tesb.version>
+                            <jython-standalone.tesb.version>${jython-standalone.tesb.version}</jython-standalone.tesb.version>
+                            <kudu.tesb.version>${kudu.tesb.version}</kudu.tesb.version>
+                            <mina.tesb.version>${mina.tesb.version}</mina.tesb.version>
+                            <protobuf.tesb.version>${protobuf.tesb.version}</protobuf.tesb.version>
+                            <pulsar.tesb.version>${pulsar.tesb.version}</pulsar.tesb.version>
+                            <velocity.tesb.version>${velocity.tesb.version}</velocity.tesb.version>
+                            <wildfly-elytron.tesb.version>${wildfly-elytron.tesb.version}</wildfly-elytron.tesb.version>
                             <zookeeper.tesb.version>${zookeeper.tesb.version}</zookeeper.tesb.version>
                             <zookeeper-server.tesb.version>${zookeeper-server.tesb.version}</zookeeper-server.tesb.version>
                         </properties>


(camel-karaf) 05/12: DPE-585 Jackson alignment at version 2.18.2.

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit 9226c6b695387f18ab9265506c50d6208253603f
Author: Andreas Mattes <an...@fastmail.de>
AuthorDate: Mon Jan 6 22:51:49 2025 +0100

    DPE-585 Jackson alignment at version 2.18.2.
---
 features/src/main/feature/camel-features.xml | 210 +++++++++++++--------------
 pom.xml                                      |  15 +-
 2 files changed, 116 insertions(+), 109 deletions(-)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index 0fbdf0ecc..881c95004 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -128,11 +128,11 @@
         <bundle dependency='true'>mvn:org.bouncycastle/bcpkix-jdk18on/${bouncycastle-version}</bundle>
     </feature>
 
-    <feature name="jackson" version="${jackson2-version}">
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-databind/${jackson2-version}</bundle>
+    <feature name="jackson" version="${jackson2.tesb.version}">
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-databind/${jackson2.tesb.version}</bundle>
         <!-- wrap needed to add the missing SPI-Provider clause to the manifest -->
-        <bundle dependency='true'>wrap:mvn:com.fasterxml.jackson.core/jackson-core/${jackson2-version}$overwrite=merge</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson2-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:com.fasterxml.jackson.core/jackson-core/${jackson2.tesb.version}$overwrite=merge</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson2.tesb.version}</bundle>
     </feature>
 
     <feature name="jackson" version="${jackson216-version}">
@@ -232,9 +232,9 @@
     </feature>
     <feature name="azure" version="${azure-core-version}" start-level="50">
         <feature version='[${azure-core-version},2)'>azure-msal4j</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-core/${azure-core-version}$${spi-consumer}&amp;Import-Package=*;resolution:=optional,com.fasterxml.jackson.dataformat.xml.deser;resolution:=optional,com.fasterxml.jackson.dataformat.xml.ser;resolution:=optional</bundle>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-identity/${azure-identity-version}$Import-Package=com.sun.jna,*;resolution:=optional</bundle>
         <bundle dependency='true'>mvn:io.projectreactor/reactor-core/${auto-detect-version}</bundle>
@@ -441,7 +441,7 @@
     </feature>
     <feature name='camel-avro' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.avro/avro/${avro-version}</bundle>
@@ -449,7 +449,7 @@
     </feature>
     <feature name='camel-avro-rpc' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${auto-detect-version}</bundle>
@@ -495,7 +495,7 @@
     <feature name='camel-aws-secrets-manager' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="${aws-java-sdk2-version}">awssdk</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/cloudtrail/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/sqs/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/secretsmanager/${aws-java-sdk2-version}</bundle>
@@ -656,7 +656,7 @@
     </feature>
     <feature name='camel-azure-cosmosdb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[${azure-core-version},2)'>azure</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-cosmos/${auto-detect-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-azure-cosmosdb/${upstream.version}</bundle>
@@ -675,7 +675,7 @@
     </feature>
     <feature name='camel-azure-key-vault' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[${azure-core-version},2)'>azure-eventhubs</feature>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-security-keyvault-secrets/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.azure/azure-storage-blob/${azure-storage-blob-version}</bundle>
@@ -760,17 +760,17 @@
     </feature>
     <feature name='camel-bonita' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[3,4)">jaxb-runtime</feature>
         <feature version="[4,5)">camel-cxf</feature>
         <bundle dependency="true">mvn:org.apache.ws.xmlschema/xmlschema-core/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-bonita/${upstream.version}</bundle>
     </feature>
     <feature name='camel-box' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="${jetty12.tesb.version-range}">jetty</feature>
         <feature version='[${bouncycastle-version},2)'>bouncycastle</feature>
         <feature version='[5,6)'>http-client</feature>
@@ -780,8 +780,8 @@
     </feature>
     <feature name='camel-braintree' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.jr/jackson-jr-objects/${jackson2-version}</bundle>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.jr/jackson-jr-objects/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-csv/${commons-csv-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:com.braintreepayments.gateway/braintree-java/${braintree-gateway-version}</bundle>
@@ -794,7 +794,7 @@
     </feature>
     <feature name='camel-cassandraql' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency="true">mvn:com.datastax.oss/java-driver-core/${cassandra-driver-version}</bundle>
         <bundle dependency='true'>mvn:com.datastax.oss/java-driver-query-builder/${cassandra-driver-version}</bundle>
@@ -807,13 +807,13 @@
     </feature>
     <feature name='camel-cbor' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-cbor/${jackson2-version}</bundle>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-cbor/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-cbor/${upstream.version}</bundle>
     </feature>
     <feature name='camel-chatscript' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle>mvn:org.apache.camel.karaf/camel-chatscript/${upstream.version}</bundle>
     </feature>
     <feature name='camel-chunk' version='${upstream.version}' start-level='50'>
@@ -861,7 +861,7 @@
     </feature>
     <feature name='camel-consul' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[33,34)'>guava</feature>
         <bundle dependency='true'>wrap:mvn:org.kiwiproject/consul-client/${consul-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okhttp3/okhttp/${consul-okhttp3-version}</bundle>
@@ -870,8 +870,8 @@
         <bundle dependency='true'>wrap:mvn:com.squareup.retrofit2/converter-jackson/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okio/okio/${consul-okio-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.squareup.okio/okio-jvm/${consul-okio-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-guava/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-guava/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-consul/${upstream.version}</bundle>
     </feature>
@@ -961,8 +961,8 @@
     </feature>
     <feature name='camel-debezium-common' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-afterburner/${jackson216-version}</bundle>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-afterburner/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.kafka/kafka-clients/${kafka-version}</bundle>
         <!-- Api, runtime and transform have split packages so we merge all into api -->
         <bundle dependency='true'>wrap:mvn:org.apache.kafka/connect-runtime/${kafka-version}$Fragment-Host=org.apache.kafka.connect-api;bundle-version=${kafka-version}</bundle>
@@ -1066,7 +1066,7 @@
     <feature name='camel-docker' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[32,33)'>guava</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
         <!-- both 'docker-java' and 'docker-java-core' export 'com.github.dockerjava.core',
         the fragmented host option will enforce both bundles to share the same class loader,
@@ -1083,7 +1083,7 @@
     <feature name='camel-drill' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-spring-version}'>spring-jdbc</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.typesafe/config/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.reflections/reflections/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.javassist/javassist/${javassist-version}</bundle>
@@ -1100,7 +1100,7 @@
         <feature version="[6,7)">jakarta-servlet</feature>
         <bundle dependency='true'>mvn:com.google.code.findbugs/jsr305/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-core/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-core/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:com.dropbox.core/dropbox-core-sdk/${dropbox-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-dropbox/${upstream.version}</bundle>
     </feature>
@@ -1119,7 +1119,7 @@
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature prerequisite='true'>wrap</feature>
         <feature prerequisite="true">spifly</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency="true">mvn:org.glassfish.hk2/osgi-resource-locator/${osgi-resource-locator-version}</bundle>
         <bundle dependency="true">mvn:org.eclipse.parsson/parsson/${parson-version}</bundle>
@@ -1135,7 +1135,7 @@
     <feature name='camel-elasticsearch-rest-client' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature prerequisite='true'>wrap</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents/httpasyncclient/${httpasyncclient-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.elasticsearch.client/elasticsearch-rest-client/${elasticsearch-java-client-version}</bundle>
@@ -1151,7 +1151,7 @@
     </feature>
     <feature name='camel-etcd3' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>wrap:mvn:io.etcd/jetcd-common/${jetcd-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.etcd/jetcd-core/${jetcd-version}</bundle>
@@ -1172,10 +1172,10 @@
     </feature>
     <feature name='camel-fhir' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
         <feature version='[33,34)'>guava</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-text/${commons-text-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
@@ -1245,7 +1245,7 @@
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[33,34)'>guava</feature>
         <feature version='[4,5)'>http-client</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.google.http-client/google-http-client/${google-cloud-http-client-version}$overwrite=merge&amp;Import-Package=com.google.common*;version="[33,34)",*&amp;Export-Package=com.google.api.client.auth*;version=${google-cloud-http-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.apis/google-api-services-bigquery/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.auth/google-auth-library-credentials/${google-auth-library-oauth2-http-version}</bundle>
@@ -1379,7 +1379,7 @@
     <feature name='camel-google-secret-manager' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[33,34)">guava</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.google.api/api-common/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.api/gax/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.google.auth/google-auth-library-credentials/${google-auth-library-oauth2-http-version}</bundle>
@@ -1413,7 +1413,7 @@
         <feature version='${camel-osgi-version-range}'>camel-gson</feature>
         <feature version="[33,34)">guava</feature>
         <feature version='[4,5)'>http-client</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.google.api-client/google-api-client/${google-api-client-version}</bundle>
         <bundle dependency='true'>mvn:com.google.http-client/google-http-client-apache-v2/${google-cloud-http-client-version}</bundle>
         <bundle dependency='true'>mvn:org.threeten/threetenbp/${auto-detect-version}</bundle>
@@ -1516,7 +1516,7 @@
     </feature>
     <feature name='camel-huaweicloud-common' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.huaweicloud.sdk/huaweicloud-sdk-core/${huaweicloud-sdk-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-huaweicloud-common/${upstream.version}</bundle>
     </feature>
@@ -1662,7 +1662,7 @@
     </feature>
     <feature name='camel-jackson' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle>mvn:org.apache.camel.karaf/camel-jackson/${upstream.version}</bundle>
     </feature>
     <feature name='camel-jackson-avro' version='${upstream.version}' start-level='50'>
@@ -1671,15 +1671,15 @@
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.avro/avro/${avro-version}</bundle>
-        <bundle dependency='true'>mvn:org.codehaus.jackson/jackson-core-asl/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:org.codehaus.jackson/jackson-mapper-asl/${auto-detect-version}</bundle>
-        <bundle dependency="true">mvn:com.thoughtworks.paranamer/paranamer/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-avro/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:org.codehaus.jackson/jackson-core-asl/${jackson-asl.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:org.codehaus.jackson/jackson-mapper-asl/${jackson-asl.tesb.version}</bundle>
+        <bundle dependency="true">mvn:com.thoughtworks.paranamer/paranamer/${paranamer.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-avro/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-jackson-avro/${upstream.version}</bundle>
     </feature>
     <feature name='camel-jackson-protobuf' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-protobuf/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-protobuf/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-jackson-protobuf/${upstream.version}</bundle>
     </feature>
     <feature name='camel-jacksonxml' version='${upstream.version}' start-level='50'>
@@ -1799,7 +1799,7 @@
     </feature>
     <feature name="camel-jq" version="${upstream.version}" start-level="50">
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:net.thisptr/jackson-jq/${jackson-jq-version}$overwrite=merge&amp;Export-Package=net*;version=${jackson-jq-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jruby.jcodings/jcodings/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.jruby.joni/joni/${auto-detect-version}</bundle>
@@ -1811,19 +1811,19 @@
     </feature>
     <feature name='camel-jslt' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.schibsted.spt.data/jslt/${jslt-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-jslt/${upstream.version}</bundle>
     </feature>
     <feature name='camel-jsonata' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.dashjoin/jsonata/${jsonata-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-jsonata/${upstream.version}</bundle>
     </feature>
     <feature name='camel-json-patch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.github.java-json-tools/json-patch/${json-patch-version}$overwrite=merge&amp;Export-Package=com.github.fge*;version=${json-patch-version}&amp;Import-Package=com.fasterxml*,com.github*;javax*</bundle>
         <bundle dependency='true'>wrap:mvn:com.github.java-json-tools/jackson-coreutils/${auto-detect-version}$overwrite=merge&amp;Export-Package=com.github.fge*;version=${auto-detect-version}&amp;Import-Package=com.fasterxml*,com.github*;javax*</bundle>
         <bundle dependency='true'>mvn:com.github.java-json-tools/msg-simple/${auto-detect-version}</bundle>
@@ -1832,10 +1832,10 @@
     </feature>    
     <feature name='camel-json-validator' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.networknt/json-schema-validator/${networknt-json-schema-validator-version}</bundle>
         <bundle dependency='true'>mvn:com.ethlo.time/itu/${auto-detect-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-json-validator/${upstream.version}</bundle>
     </feature>
@@ -1853,7 +1853,7 @@
     </feature>
     <feature name='camel-jsonpath' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.jayway.jsonpath/json-path/${json-path-version}</bundle>
         <bundle dependency='true'>mvn:net.minidev/json-smart/${json-smart-version}</bundle>
         <bundle dependency='true'>mvn:net.minidev/accessors-smart/${json-smart-version}</bundle>
@@ -1892,8 +1892,8 @@
     </feature>
     <feature name='camel-knative' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cloudevents</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2-version}</bundle>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-knative/${upstream.version}</bundle>
     </feature>
     <feature name='camel-knative-http' version='${upstream.version}' start-level='50'>
@@ -1905,7 +1905,7 @@
     </feature>
     <feature name='camel-kubernetes' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:io.fabric8/kubernetes-client/${kubernetes-client-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.fabric8/kubernetes-client-api/${kubernetes-client-version}</bundle>
         <bundle dependency='true'>mvn:io.fabric8/kubernetes-model-admissionregistration/${kubernetes-client-version}</bundle>
@@ -1951,7 +1951,7 @@
     </feature>
     <feature name='camel-langchain4j-chat' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-chat/${upstream.version}</bundle>
     </feature>
@@ -1973,7 +1973,7 @@
     </feature>
     <feature name='camel-langchain4j-tools' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:dev.langchain4j/langchain4j-core/${langchain4j-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-langchain4j-tools/${upstream.version}</bundle>
     </feature>
@@ -2009,7 +2009,7 @@
     </feature>
     <feature name='camel-leveldb' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:org.iq80.leveldb/leveldb/${leveldb-version}</bundle>
         <bundle dependency='true'>mvn:org.fusesource.leveldbjni/leveldbjni-all/${leveldbjni-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-leveldb/${upstream.version}</bundle>
@@ -2028,7 +2028,7 @@
     <feature name='camel-lumberjack' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='[4.1,5)'>netty</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle>mvn:org.apache.camel.karaf/camel-lumberjack/${upstream.version}</bundle>
     </feature>
     <feature name='camel-lzf' version='${upstream.version}' start-level='50'>
@@ -2047,7 +2047,7 @@
     <feature name='camel-mail-microsoft-oauth' version='${upstream.version}' start-level='50'>
         <feature version='[${azure-core-version},2)'>azure-msal4j</feature>
         <feature version='${camel-osgi-version-range}'>camel-mail</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:org.ow2.asm/asm/${auto-detect-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-mail-microsoft-oauth/${upstream.version}</bundle>
     </feature>
@@ -2062,7 +2062,7 @@
     </feature>
     <feature name='camel-metrics' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-core/${metrics-version}</bundle>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-jmx/${metrics-version}</bundle>
         <bundle dependency='true'>mvn:io.dropwizard.metrics/metrics-json/${metrics-version}</bundle>
@@ -2070,7 +2070,7 @@
     </feature>
     <feature name='camel-micrometer' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:io.micrometer/micrometer-core/${micrometer-version}$overwrite=merge&amp;Import-Package=*;resolution:=optional</bundle>
         <bundle dependency='true'>mvn:io.micrometer/micrometer-commons/${micrometer-version}</bundle>
         <bundle dependency='true'>mvn:io.micrometer/micrometer-registry-jmx/${micrometer-version}</bundle>
@@ -2246,7 +2246,7 @@
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version="[4,5)">http-client</feature>
         <feature version="[6,7)">jakarta-servlet</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:org.apache.olingo/odata-commons-api/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.olingo/odata-commons-core/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.olingo/odata-client-api/${auto-detect-version}</bundle>
@@ -2257,7 +2257,7 @@
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.httpcomponents/httpasyncclient-osgi/${httpasyncclient-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${auto-detect-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:com.fasterxml/aalto-xml/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-common/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-transport/${auto-detect-version}</bundle>
@@ -2271,12 +2271,12 @@
     </feature>
     <feature name='camel-openapi-java' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[3,4)'>jakarta-validation</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.camel/camel-tooling-util/${camel-version}$Export-Package=org.apache.camel*;version=${camel-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.camel/camel-xml-io/${camel-version}$Export-Package=org.apache.camel*;version=${camel-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.swagger.parser.v3/swagger-parser-core/${swagger-openapi3-java-parser-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.swagger.parser.v3/swagger-parser-v3/${swagger-openapi3-java-parser-version}</bundle>
@@ -2288,14 +2288,14 @@
     </feature>
     <feature name='camel-openapi-validator' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:io.swagger.core.v3/swagger-models/${auto-detect-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.atlassian.oai/swagger-request-validator-core/${swagger-request-validator-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-openapi-validator/${upstream.version}</bundle>
     </feature>
     <feature name='camel-opensearch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency='true'>mvn:jakarta.json/jakarta.json-api/${jakarta-json-api-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents/httpasyncclient/${httpasyncclient-version}</bundle>
@@ -2306,7 +2306,7 @@
     </feature>
     <feature name='camel-openstack' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[33,34)'>guava</feature>
         <!-- use wrap to override the guava version -->
         <bundle dependency='true'>wrap:mvn:com.github.openstack4j.core/openstack4j-core/${openstack4j-version}$overwrite=merge&amp;Import-Package=com.fasterxml*,com.github*,javax*,org*,com.google*;version='[33,34)'</bundle>
@@ -2348,7 +2348,7 @@
     </feature>
     <feature name='camel-parquet-avro' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.avro/avro/${avro-version}</bundle>
@@ -2423,12 +2423,12 @@
     </feature>
     <feature name='camel-plc4x' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:org.apache.plc4x/plc4j-api/${plc4x-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.plc4x/plc4j-scraper/${plc4x-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.plc4x/plc4j-connection-cache/${plc4x-version}</bundle>
         <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-collections4/${commons-collections4-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.commons/commons-math3/${commons-math3-version}</bundle>
@@ -2514,7 +2514,7 @@
     </feature>
     <feature name='camel-redis' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
         <feature version='${camel-osgi-spring-version}'>spring</feature>
         <bundle dependency='true'>mvn:org.redisson/redisson/${redisson-version}</bundle>
@@ -2522,7 +2522,7 @@
         <bundle dependency='true'>mvn:com.esotericsoftware/minlog/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:com.esotericsoftware/reflectasm/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.objenesis/objenesis/${objenesis-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-transport/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-resolver-dns/${netty-version}</bundle>
         <bundle dependency='true'>mvn:io.netty/netty-codec-dns/${netty-version}</bundle>
@@ -2552,7 +2552,7 @@
     </feature>
     <feature name='camel-rest-openapi' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-platform-http</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:io.swagger.parser.v3/swagger-parser-core/${swagger-openapi3-java-parser-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.swagger.parser.v3/swagger-parser-v3/${swagger-openapi3-java-parser-version}</bundle>
         <bundle dependency='true'>mvn:io.swagger.core.v3/swagger-core-jakarta/${swagger-openapi3-version}</bundle>
@@ -2590,12 +2590,12 @@
     <feature name='camel-salesforce' version='${upstream.version}' start-level='50'>
         <feature version="${jetty12.tesb.version-range}">jetty</feature>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[32,33)">guava</feature>
         <feature version="[3,4)">jakarta-validation</feature>        
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-jsonSchema/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-jsonSchema-jakarta/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-jsonSchema/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.module/jackson-module-jsonSchema-jakarta/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-api/${grpc-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.grpc/grpc-protobuf/${grpc-version}</bundle>
@@ -2617,7 +2617,7 @@
     </feature>   
     <feature name='camel-sap-netweaver' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle>mvn:org.apache.camel.karaf/camel-sap-netweaver/${upstream.version}</bundle>
     </feature>
     <feature name='camel-saxon' version='${upstream.version}' start-level='50'>
@@ -2637,14 +2637,14 @@
     </feature>
     <feature name='camel-servicenow' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='${camel-osgi-version-range}'>camel-cxf</feature>
         <feature version="[4,5)">jaxb-runtime</feature>
         <feature version="[5,6)">jakarta-servlet</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2-version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.ws.xmlschema/xmlschema-core/${auto-detect-version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-oauth2/${cxf.tesb.version}</bundle>
         <bundle dependency='true'>mvn:org.apache.cxf/cxf-rt-rs-security-jose-jaxrs/${cxf-version}</bundle>
@@ -2737,7 +2737,7 @@
     </feature>
     <feature name='camel-splunk-hec' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[5,6)'>http-client</feature>
         <bundle dependency='true'>mvn:commons-validator/commons-validator/${commons-validator-version}</bundle>
         <bundle dependency='true'>mvn:commons-beanutils/commons-beanutils/${commons-beanutils-version}</bundle>
@@ -2820,7 +2820,7 @@
     </feature>
     <feature name='camel-stitch' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[4.1,5)'>netty</feature>
         <bundle dependency='true'>mvn:org.reactivestreams/reactive-streams/${reactive-streams-version}</bundle>
         <bundle dependency='true'>mvn:io.projectreactor/reactor-core/${reactor-version}</bundle>
@@ -2871,7 +2871,7 @@
     </feature>
     <feature name='camel-tahu' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle>mvn:org.eclipse.tahu/tahu-core/${tahu-version}</bundle>
         <bundle>mvn:org.eclipse.tahu/tahu-edge/${tahu-version}</bundle>
         <bundle>mvn:org.eclipse.tahu/tahu-host/${tahu-version}</bundle>
@@ -2888,7 +2888,7 @@
     <feature name='camel-telegram' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-webhook</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-telegram/${upstream.version}</bundle>
     </feature>
@@ -2943,7 +2943,7 @@
     </feature>
     <feature name='camel-twilio' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[4,5)">http-client</feature>
         <bundle dependency='true'>wrap:mvn:com.twilio.sdk/twilio/${twilio-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-twilio/${upstream.version}</bundle>
@@ -2984,7 +2984,7 @@
     </feature>
     <feature name='camel-vertx' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-vertx-common</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle>mvn:org.apache.camel.karaf/camel-vertx/${upstream.version}</bundle>
     </feature>
     <feature name='camel-vertx-common' version='${upstream.version}' start-level='50'>
@@ -3017,14 +3017,14 @@
     </feature>
     <feature name='camel-wasm' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:com.dylibso.chicory/runtime/${chicocy-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.dylibso.chicory/wasm/${chicocy-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-wasm/${upstream.version}</bundle>
     </feature>
     <feature name='camel-weather' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version='[5,6)'>http-client</feature>
         <bundle dependency='true'>wrap:mvn:org.apache.httpcomponents.core5/httpcore5-h2/${httpclient-version}$Bundle-SymbolicName=org.apache.httpcore5.h2&amp;Bundle-Version=${httpclient-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-weather/${upstream.version}</bundle>
@@ -3046,16 +3046,16 @@
     <feature name='camel-whatsapp' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <feature version='${camel-osgi-version-range}'>camel-webhook</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2-version}</bundle>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-whatsapp/${upstream.version}</bundle>
     </feature>
     <feature name='camel-wordpress' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-cxf</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2-version}</bundle>
-        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2-version}</bundle>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-base/${jackson2.tesb.version}</bundle>
+        <bundle dependency='true'>mvn:com.fasterxml.jackson.jakarta.rs/jackson-jakarta-rs-json-provider/${jackson2.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-wordpress/${upstream.version}</bundle>
     </feature>
     <feature name='camel-workday' version='${upstream.version}' start-level='50'>
@@ -3065,7 +3065,7 @@
     </feature>
     <feature name='camel-xchange' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>wrap:mvn:org.knowm.xchange/xchange-core/${xchange-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.knowm.xchange/xchange-binance/${xchange-version}</bundle>
         <bundle dependency='true'>wrap:mvn:com.github.mmazi/rescu/${auto-detect-version}</bundle>
@@ -3073,7 +3073,7 @@
     </feature>
     <feature name='camel-xj' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-xslt-saxon</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle>mvn:org.apache.camel.karaf/camel-xj/${upstream.version}</bundle>
     </feature>
     <feature name='camel-xmlsecurity' version='${upstream.version}' start-level='50'>
@@ -3107,7 +3107,7 @@
     </feature>
     <feature name='camel-zeebe' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <bundle dependency='true'>mvn:com.google.protobuf/protobuf-java/${protobuf-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.camunda/zeebe-client-java/${zeebe-version}</bundle>
         <bundle dependency='true'>wrap:mvn:io.camunda/zeebe-gateway-protocol-impl/${zeebe-version}</bundle>
@@ -3139,7 +3139,7 @@
     </feature>
     <feature name='camel-zookeeper' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[32,33)">guava</feature>
         <feature version="[3,4)">zookeeper-core</feature>
         <!-- <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Export-Package=org.apache.zookeeper*;version=${zookeeper-version}</bundle> -->
@@ -3152,7 +3152,7 @@
     </feature>
     <feature name='camel-zookeeper-master' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
-        <feature version='${camel-osgi-jackson2-version}'>jackson</feature>
+        <feature version='${camel-osgi-jackson2.tesb.version}'>jackson</feature>
         <feature version="[32,33)">guava</feature>
         <feature version="[3,4)">zookeeper-core</feature>
         <!-- <bundle dependency='true'>wrap:mvn:org.apache.zookeeper/zookeeper/${zookeeper-version}$Export-Package=org.apache.zookeeper*;version=${zookeeper-version}</bundle> -->
diff --git a/pom.xml b/pom.xml
index 922054a83..393878399 100644
--- a/pom.xml
+++ b/pom.xml
@@ -97,7 +97,7 @@
         <camel-spring.tesb.version>4.8.1.20240820</camel-spring.tesb.version>
         <camel-blueprint.tesb.version>4.8.1.20240820</camel-blueprint.tesb.version>
 
-        <cxf.tesb.version>4.1.0.20241216</cxf.tesb.version>
+        <cxf.tesb.version>4.1.0.1</cxf.tesb.version>
         <jetty11.tesb.version>11.0.21</jetty11.tesb.version>
         <jetty12.tesb.version>12.0.15</jetty12.tesb.version>
         <jetty.tesb.version>${jetty12.tesb.version}</jetty.tesb.version>
@@ -105,6 +105,8 @@
         <jetty12.tesb.version-range>[12,13)</jetty12.tesb.version-range>
         <jetty.tesb.version-range>${jetty12.tesb.version-range}</jetty.tesb.version-range>
         <async-http-client.tesb.version>2.12.4</async-http-client.tesb.version>
+        <jackson-asl.tesb.version>1.9.16-TALEND</jackson-asl.tesb.version>
+        <jackson2.tesb.version>2.18.2</jackson2.tesb.version>
         <jaxb3-istack.tesb.version>4.0.1</jaxb3-istack.tesb.version>
         <jaxb3-fastinfoset.tesb.version>2.0.0</jaxb3-fastinfoset.tesb.version>
         <jaxb3-staxex.tesb.version>2.0.1</jaxb3-staxex.tesb.version>
@@ -116,6 +118,7 @@
         <jython-standalone.tesb.version>${jython-version}</jython-standalone.tesb.version>
         <kudu.tesb.version>1.17.1</kudu.tesb.version>
         <mina.tesb.version>2.2.4</mina.tesb.version>
+        <paranamer.tesb.version>2.8</paranamer.tesb.version>
         <protobuf.tesb.version>3.25.5</protobuf.tesb.version>
         <pulsar.tesb.version>3.3.3</pulsar.tesb.version>
         <velocity.tesb.version>2.4.1</velocity.tesb.version>
@@ -124,6 +127,7 @@
         <zookeeper-server.tesb.version>3.9.3.jetty12.1</zookeeper-server.tesb.version>
         <camel-osgi-cxf.tesb.version>[4.1,4.2)</camel-osgi-cxf.tesb.version>
         <camel-osgi-jetty.tesb.version>[12,13)</camel-osgi-jetty.tesb.version>
+        <camel-osgi-jackson2.tesb.version>[2.18,2.19)</camel-osgi-jackson2.tesb.version>
 
         <jdk-version>17</jdk-version>
         <maven.compiler.source>${jdk-version}</maven.compiler.source>
@@ -199,8 +203,8 @@
         <consul-client-version>1.4.1</consul-client-version>
         <couchbase-client-version>3.7.2</couchbase-client-version>
         <curator-version>5.7.0</curator-version>
-        <cxf-version>4.1.0</cxf-version>
-        <cxf-codegen-plugin-version>4.1.0</cxf-codegen-plugin-version>
+        <cxf-version>4.1.0.1</cxf-version>
+        <cxf-codegen-plugin-version>4.1.0.1</cxf-codegen-plugin-version>
         <cxf-xjc-plugin-version>4.1.0</cxf-xjc-plugin-version>
         <cxf-xjc-utils-version>4.1.0</cxf-xjc-utils-version>
         <datasonnet-mapper-version>2.5.2-jakarta4</datasonnet-mapper-version>
@@ -565,7 +569,7 @@
         <camel-osgi-spring-version>[6.1,6.2)</camel-osgi-spring-version>
         <camel-osgi-saaj-version>[2,4)</camel-osgi-saaj-version>
         <camel-osgi-slf4j-version>[2,3)</camel-osgi-slf4j-version>
-        <camel-osgi-cxf-version>[4.0,4.2)</camel-osgi-cxf-version>
+        <camel-osgi-cxf-version>[4.1,4.2)</camel-osgi-cxf-version>
 
         <!-- Camel Karaf OSGI version ranges -->
         <camel-osgi-version-clean>4.8</camel-osgi-version-clean>
@@ -745,6 +749,8 @@
                             <jetty12.tesb.version-range>${jetty12.tesb.version-range}</jetty12.tesb.version-range>
                             <jetty.tesb.version-range>${jetty.tesb.version-range}</jetty.tesb.version-range>
                             <async-http-client.tesb.version>${async-http-client.tesb.version}</async-http-client.tesb.version>
+                            <jackson-asl.tesb.version>${jackson-asl.tesb.version}</jackson-asl.tesb.version>
+                            <jackson2.tesb.version>${jackson2.tesb.version}</jackson2.tesb.version>
                             <jaxb3-istack.tesb.version>${jaxb3-istack.tesb.version}</jaxb3-istack.tesb.version>
                             <jaxb3-fastinfoset.tesb.version>${jaxb3-fastinfoset.tesb.version}</jaxb3-fastinfoset.tesb.version>
                             <jaxb3-staxex.tesb.version>${jaxb3-staxex.tesb.version}</jaxb3-staxex.tesb.version>
@@ -756,6 +762,7 @@
                             <jython-standalone.tesb.version>${jython-standalone.tesb.version}</jython-standalone.tesb.version>
                             <kudu.tesb.version>${kudu.tesb.version}</kudu.tesb.version>
                             <mina.tesb.version>${mina.tesb.version}</mina.tesb.version>
+                            <paranamer.tesb.version>${paranamer.tesb.version}</paranamer.tesb.version>
                             <protobuf.tesb.version>${protobuf.tesb.version}</protobuf.tesb.version>
                             <pulsar.tesb.version>${pulsar.tesb.version}</pulsar.tesb.version>
                             <velocity.tesb.version>${velocity.tesb.version}</velocity.tesb.version>


(camel-karaf) 06/12: fix(DPE-586) : add missing import to cxf all (#80)

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit cc37ab8e71b7aa073a9cd8a183933425db7fc238
Author: François de Parscau <11...@users.noreply.github.com>
AuthorDate: Thu Jan 9 11:08:53 2025 +0100

    fix(DPE-586) : add missing import to cxf all (#80)
---
 components/camel-cxf/camel-cxf-all/pom.xml       | 2 +-
 components/camel-cxf/camel-cxf-blueprint/pom.xml | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/components/camel-cxf/camel-cxf-all/pom.xml b/components/camel-cxf/camel-cxf-all/pom.xml
index 261b87183..cf596dd92 100644
--- a/components/camel-cxf/camel-cxf-all/pom.xml
+++ b/components/camel-cxf/camel-cxf-all/pom.xml
@@ -49,7 +49,7 @@
             com.sun.xml.internal.messaging.saaj.soap;resolution:=optional,
             com.ctc.wstx*;resolution:=optional,
             org.codehaus.stax2*;resolution:=optional,
-            org.codehaus.jettison.mapped*;resolution:=optional,
+            org.codehaus.jettison*;resolution:=optional,
             org.dom4j*;resolution:=optional,
             com.sun.msv*;resolution:=optional,
             com.sun.tools*;resolution:=optional,
diff --git a/components/camel-cxf/camel-cxf-blueprint/pom.xml b/components/camel-cxf/camel-cxf-blueprint/pom.xml
index 6d4141046..2bd209ada 100644
--- a/components/camel-cxf/camel-cxf-blueprint/pom.xml
+++ b/components/camel-cxf/camel-cxf-blueprint/pom.xml
@@ -100,7 +100,7 @@
         <dependency>
             <groupId>org.apache.camel.karaf</groupId>
             <artifactId>camel-cxf-all</artifactId>
-            <version>${upstream.version}</version>
+            <version>${camel-cxf-all.tesb.version}</version>
             <scope>provided</scope>
             <optional>true</optional>
         </dependency>


(camel-karaf) 12/12: fix(DPE-642): Add Groovy subprojects to camel-groovy

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit dc4130a54b976bea05346fb1074482859bc6891a
Author: Nicolas Filotto <ni...@qlik.com>
AuthorDate: Fri Jan 17 19:05:25 2025 +0100

    fix(DPE-642): Add Groovy subprojects to camel-groovy
---
 features/src/main/feature/camel-features.xml | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index d22b0fab4..13f5671a7 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -1453,6 +1453,28 @@
     <feature name='camel-groovy' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.groovy/groovy/${groovy-version}</bundle>
+        <!-- Talend additions begin -->
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-ant/${groovy-version}</bundle>
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-cli-commons/${groovy-version}</bundle> -->
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-cli-picocli/${groovy-version}</bundle> -->
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-console/${groovy-version}</bundle> -->
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-datetime/${groovy-version}</bundle>
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-docgenerator/${groovy-version}</bundle> -->
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-groovydoc/${groovy-version}</bundle> -->
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-groovysh/${groovy-version}</bundle> -->
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-jmx/${groovy-version}</bundle> -->
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-json/${groovy-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-macro/${groovy-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-nio/${groovy-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-servlet/${groovy-version}</bundle>
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-sql/${groovy-version}</bundle>
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-swing/${groovy-version}</bundle> -->
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-templates/${groovy-version}</bundle>
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-test/${groovy-version}</bundle> -->
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-test-junit5/${groovy-version}</bundle> -->
+        <!-- <bundle dependency='true'>mvn:org.apache.groovy/groovy-testng/${groovy-version}</bundle> -->
+        <bundle dependency='true'>mvn:org.apache.groovy/groovy-xml/${groovy-version}</bundle>
+        <!-- Talend additions end -->
         <bundle>mvn:org.apache.camel.karaf/camel-groovy/${upstream.version}</bundle>
     </feature>
     <feature name='camel-grok' version='${upstream.version}' start-level='50'>


(camel-karaf) 07/12: fix(DPE-562): Add an integration test for AWS Kinesis (#82)

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit 4eaf6d4021d959e47f14647d22f48bbdaa62bf2f
Author: Nicolas Filotto <es...@users.noreply.github.com>
AuthorDate: Mon Jan 13 18:10:24 2025 +0100

    fix(DPE-562): Add an integration test for AWS Kinesis (#82)
---
 features/src/main/feature/camel-features.xml       |  4 +-
 tests/features/camel-aws2-kinesis/pom.xml          | 44 ++++++++++++
 .../camel/test/CamelAws2KinesisRouteSupplier.java  | 71 +++++++++++++++++++
 .../karaf/camel/itest/CamelAws2KinesisITest.java   | 81 ++++++++++++++++++++++
 tests/features/pom.xml                             |  1 +
 5 files changed, 200 insertions(+), 1 deletion(-)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index 881c95004..06b883857 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -567,7 +567,9 @@
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/dynamodb/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/cloudwatch/${aws-java-sdk2-version}</bundle>
         <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-json-protocol/${aws-java-sdk2-version}</bundle>
-        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kinesis/${upstream.version}</bundle>
+        <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/aws-cbor-protocol/${aws-java-sdk2-version}</bundle>
+        <bundle dependency='true'>wrap:mvn:software.amazon.awssdk/third-party-jackson-dataformat-cbor/${aws-java-sdk2-version}</bundle>
+        <bundle>mvn:org.apache.camel.karaf/camel-aws2-kinesis/${project.version}</bundle>
     </feature>
     <feature name='camel-aws2-kms' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
diff --git a/tests/features/camel-aws2-kinesis/pom.xml b/tests/features/camel-aws2-kinesis/pom.xml
new file mode 100644
index 000000000..d8f037fd2
--- /dev/null
+++ b/tests/features/camel-aws2-kinesis/pom.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.camel.karaf</groupId>
+        <artifactId>camel-karaf-features-test</artifactId>
+        <version>4.8.1</version>
+    </parent>
+
+    <artifactId>camel-aws2-kinesis-test</artifactId>
+    <name>Apache Camel :: Karaf :: Tests :: Features :: AWS2 Kinesis</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.camel</groupId>
+            <artifactId>camel-aws2-kinesis</artifactId>
+            <version>${camel-version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.testcontainers</groupId>
+            <artifactId>localstack</artifactId>
+            <version>${testcontainers-version}</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+</project>
\ No newline at end of file
diff --git a/tests/features/camel-aws2-kinesis/src/main/java/org/apache/karaf/camel/test/CamelAws2KinesisRouteSupplier.java b/tests/features/camel-aws2-kinesis/src/main/java/org/apache/karaf/camel/test/CamelAws2KinesisRouteSupplier.java
new file mode 100644
index 000000000..d0297a939
--- /dev/null
+++ b/tests/features/camel-aws2-kinesis/src/main/java/org/apache/karaf/camel/test/CamelAws2KinesisRouteSupplier.java
@@ -0,0 +1,71 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.karaf.camel.test;
+
+import java.util.function.Function;
+
+import org.apache.camel.component.aws2.kinesis.Kinesis2Component;
+import org.apache.camel.component.aws2.kinesis.Kinesis2Configuration;
+import org.apache.camel.component.aws2.kinesis.Kinesis2Constants;
+import org.apache.camel.CamelContext;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.model.RouteDefinition;
+import org.apache.karaf.camel.itests.AbstractCamelSingleFeatureResultMockBasedRouteSupplier;
+import org.apache.karaf.camel.itests.CamelRouteSupplier;
+import org.osgi.service.component.annotations.Component;
+
+import static org.apache.camel.builder.Builder.constant;
+
+@Component(name = "karaf-camel-aws2-kinesis-test", immediate = true, service = CamelRouteSupplier.class)
+public class CamelAws2KinesisRouteSupplier extends AbstractCamelSingleFeatureResultMockBasedRouteSupplier {
+
+    private static final String HOST = System.getProperty("localstack.kinesis.host");
+    private static final String PORT = System.getProperty("localstack.kinesis.port");
+    private static final String REGION = System.getProperty("localstack.kinesis.region");
+    private static final String ACCESS_KEY = System.getProperty("localstack.kinesis.accessKey");
+    private static final String SECRET_KEY = System.getProperty("localstack.kinesis.secretKey");
+    private static final String STREAM_NAME = System.getProperty("localstack.kinesis.streamName");
+    private static final String COMPONENT_NAME = "aws2-kinesis";
+
+    @Override
+    public void configure(CamelContext camelContext) {
+        final Kinesis2Component kinesis2Component = new Kinesis2Component();
+        final Kinesis2Configuration configuration = new Kinesis2Configuration();
+        configuration.setAccessKey(ACCESS_KEY);
+        configuration.setSecretKey(SECRET_KEY);
+        configuration.setRegion(REGION);
+        configuration.setOverrideEndpoint(true);
+        configuration.setUriEndpointOverride(String.format("http://%s:%s", HOST, PORT));
+        kinesis2Component.setConfiguration(configuration);
+        camelContext.addComponent(COMPONENT_NAME, kinesis2Component);
+    }
+
+    @Override
+    protected void configureProducer(RouteBuilder builder, RouteDefinition producerRoute) {
+        configureConsumer(producerRoute
+                .setBody(constant("Hello Kinesis"))
+                .setHeader(Kinesis2Constants.PARTITION_KEY, constant("partition-1"))
+                .toF("%s://%s", COMPONENT_NAME, STREAM_NAME));
+    }
+
+    @Override
+    protected Function<RouteBuilder, RouteDefinition> consumerRoute() {
+        return builder ->
+                builder.fromF("%s://%s", COMPONENT_NAME, STREAM_NAME)
+                        .log("Received successfully: ${body}")
+                        .setBody(constant("OK"));
+    }
+}
\ No newline at end of file
diff --git a/tests/features/camel-aws2-kinesis/src/test/java/org/apache/karaf/camel/itest/CamelAws2KinesisITest.java b/tests/features/camel-aws2-kinesis/src/test/java/org/apache/karaf/camel/itest/CamelAws2KinesisITest.java
new file mode 100644
index 000000000..878a7398b
--- /dev/null
+++ b/tests/features/camel-aws2-kinesis/src/test/java/org/apache/karaf/camel/itest/CamelAws2KinesisITest.java
@@ -0,0 +1,81 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.karaf.camel.itest;
+
+
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.karaf.camel.itests.AbstractCamelSingleFeatureResultMockBasedRouteITest;
+import org.apache.karaf.camel.itests.CamelKarafTestHint;
+import org.apache.karaf.camel.itests.GenericContainerResource;
+import org.apache.karaf.camel.itests.PaxExamWithExternalResource;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
+import org.ops4j.pax.exam.spi.reactors.PerClass;
+import org.testcontainers.containers.localstack.LocalStackContainer;
+import org.testcontainers.utility.DockerImageName;
+
+@CamelKarafTestHint(externalResourceProvider = CamelAws2KinesisITest.ExternalResourceProviders.class)
+@RunWith(PaxExamWithExternalResource.class)
+@ExamReactorStrategy(PerClass.class)
+public class CamelAws2KinesisITest extends AbstractCamelSingleFeatureResultMockBasedRouteITest {
+
+    @Override
+    public void configureMock(MockEndpoint mock) {
+        mock.expectedBodiesReceived("Hello Kinesis");
+    }
+
+    @Test
+    public void testResultMock() throws Exception {
+        assertMockEndpointsSatisfied();
+    }
+
+    public static final class ExternalResourceProviders {
+
+        private static final int LOCALSTACK_ORIGINAL_PORT = 4566;
+        private static final String STREAM_NAME = "my-stream";
+        private static final String ACCESS_KEY = "test";
+        private static final String SECRET_KEY = "test";
+        private static final String REGION = "us-east-1";
+        public static GenericContainerResource<LocalStackContainer> createAws2KinesisContainer() {
+
+            final LocalStackContainer localStackContainer =
+                    new LocalStackContainer(DockerImageName.parse("localstack/localstack:3.4.0"))
+                            .withServices(LocalStackContainer.Service.KINESIS);
+
+            return new GenericContainerResource<>(localStackContainer, resource -> {
+                try {
+                    localStackContainer.execInContainer("aws", "configure", "set", "aws_access_key_id", ACCESS_KEY, "--profile",
+                            "localstack");
+                    localStackContainer.execInContainer("aws", "configure", "set", "aws_secret_access_key", SECRET_KEY,
+                            "--profile", "localstack");
+                    localStackContainer.execInContainer("aws", "configure", "set", "region", REGION, "--profile", "localstack");
+                    localStackContainer.execInContainer("aws",
+                            "--endpoint-url=http://" + localStackContainer.getHost() + ":" + LOCALSTACK_ORIGINAL_PORT, "kinesis",
+                            "create-stream", "--stream-name", STREAM_NAME, "--shard-count", "1", "--region", REGION,
+                            "--profile", "localstack");
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+                resource.setProperty("localstack.kinesis.host", localStackContainer.getHost());
+                resource.setProperty("localstack.kinesis.port",
+                        Integer.toString(localStackContainer.getMappedPort(LOCALSTACK_ORIGINAL_PORT)));
+                resource.setProperty("localstack.kinesis.accessKey", ACCESS_KEY);
+                resource.setProperty("localstack.kinesis.secretKey", SECRET_KEY);
+                resource.setProperty("localstack.kinesis.region", REGION);
+                resource.setProperty("localstack.kinesis.streamName", STREAM_NAME);
+            });
+        }
+    }
+}
\ No newline at end of file
diff --git a/tests/features/pom.xml b/tests/features/pom.xml
index 63e8e54cb..3861dd12c 100644
--- a/tests/features/pom.xml
+++ b/tests/features/pom.xml
@@ -49,6 +49,7 @@
         <module>camel-atom</module>
         <module>camel-avro</module>
         <module>camel-aws2-iam</module>
+        <module>camel-aws2-kinesis</module>
         <module>camel-aws2-s3</module>
         <module>camel-aws2-ses</module>
         <module>camel-aws2-sns</module>


(camel-karaf) 11/12: DPE-570 camel-robotframework disabled as unsecure.

Posted by nf...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch essobedo/DPE-642/add-groovy-sub-projects
in repository https://gitbox.apache.org/repos/asf/camel-karaf.git

commit 27528627d6adbc521f1395097136164ccb2c6bbe
Author: Andreas Mattes <an...@fastmail.de>
AuthorDate: Fri Jan 17 15:06:42 2025 +0100

    DPE-570 camel-robotframework disabled as unsecure.
    
    robotframework 4.1.2 security vulnerabilities from embedded commons-compress 1.19:
    CVE-2021-35515, CVE-2021-35516, CVE-2021-35517, CVE-2021-36090, CVE-2024-25710
---
 features/src/main/feature/camel-features.xml | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/features/src/main/feature/camel-features.xml b/features/src/main/feature/camel-features.xml
index a3ff7241a..d22b0fab4 100644
--- a/features/src/main/feature/camel-features.xml
+++ b/features/src/main/feature/camel-features.xml
@@ -2562,13 +2562,15 @@
         <bundle dependency='true'>mvn:commons-io/commons-io/${commons-io-version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-rest-openapi/${upstream.version}</bundle>
     </feature>
-    <feature name='camel-robotframework' version='${upstream.version}' start-level='50'>
+    <!-- Disabled because of security vulnerabilities from embedded commons-compress 1.19 -->
+    <!-- CVE-2021-35515, CVE-2021-35516, CVE-2021-35517, CVE-2021-36090, CVE-2024-25710 -->
+    <!-- <feature name='camel-robotframework' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>wrap:mvn:org.robotframework/robotframework/${robotframework-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.python/jython/${jython-version}</bundle>
         <bundle dependency='true'>wrap:mvn:org.python/jython-standalone/${jython-standalone.tesb.version}</bundle>
         <bundle>mvn:org.apache.camel.karaf/camel-robotframework/${upstream.version}</bundle>
-    </feature>
+    </feature> -->
     <feature name='camel-rocketmq' version='${upstream.version}' start-level='50'>
         <feature version='${camel-osgi-version-range}'>camel-core</feature>
         <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>