This is an automated email from the ASF dual-hosted git repository. ffang pushed a commit to branch camel-4.0.x in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-4.0.x by this push: new 10fb2b6264b [CAMEL-19843]address similar issue for cxf rest producer 10fb2b6264b is described below commit 10fb2b6264bcacd7b8971e255297a5fa0d457c77 Author: Freeman Fang <freeman.f...@gmail.com> AuthorDate: Thu Sep 21 19:41:39 2023 -0400 [CAMEL-19843]address similar issue for cxf rest producer (cherry picked from commit 805e1db89bfaaf6d0a9eaf11f52433546acc1f40) --- .../apache/camel/component/cxf/common/header/CxfHeaderHelper.java | 6 ++++-- .../org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java | 3 +++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/components/camel-cxf/camel-cxf-common/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderHelper.java b/components/camel-cxf/camel-cxf-common/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderHelper.java index 48ecf0a01bd..7bbfa5e68ee 100644 --- a/components/camel-cxf/camel-cxf-common/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderHelper.java +++ b/components/camel-cxf/camel-cxf-common/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderHelper.java @@ -190,8 +190,10 @@ public final class CxfHeaderHelper { String camelHeaderName = CXF_TO_CAMEL_HEADERS.getOrDefault(entry.getKey(), entry.getKey()); LOG.trace("Populate external header: {}={} as {}", entry.getKey(), entry.getValue(), camelHeaderName); - - camelHeaders.put(camelHeaderName, entry.getValue().get(0)); + if (!camelHeaderName.startsWith(":")) { + ///* Ignore HTTP/2 pseudo headers such as :status */ + camelHeaders.put(camelHeaderName, entry.getValue().get(0)); + } }); } diff --git a/components/camel-cxf/camel-cxf-rest/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java b/components/camel-cxf/camel-cxf-rest/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java index 9a1c150ba7a..0bdd37832d5 100644 --- a/components/camel-cxf/camel-cxf-rest/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java +++ b/components/camel-cxf/camel-cxf-rest/src/main/java/org/apache/camel/component/cxf/jaxrs/DefaultCxfRsBinding.java @@ -312,6 +312,9 @@ public class DefaultCxfRsBinding implements CxfRsBinding, HeaderFilterStrategyAw if (headerFilterStrategy.applyFilterToExternalHeaders(entry.getKey(), entry.getValue(), camelExchange) || entry.getValue().isEmpty()) { LOG.trace("Drop CXF message protocol header: {}={}", entry.getKey(), entry.getValue()); + } else if (entry.getKey().startsWith(":")) { + /* Ignore HTTP/2 pseudo headers such as :status */ + continue; } else { // just put the first String element, as the complex one is filtered camelMessage.setHeader(entry.getKey(), entry.getValue().get(0));