This is an automated email from the ASF dual-hosted git repository.
ffang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 805e1db89bf [CAMEL-19843]address similar issue for cxf rest producer
805e1db89bf is described below
commit 805e1db89bfaaf6d0a9eaf11f52433546acc1f40
Author: Freeman Fang <[email protected]>
AuthorDate: Thu Sep 21 19:41:39 2023 -0400
[CAMEL-19843]address similar issue for cxf rest producer
---
.../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));