Skip to content

fix(DPE-3961) : backport fixes from 4.14.x - #166

Open
f2par0 wants to merge 4 commits into
tesb/camel-4.8.1.xfrom
fdeparscau/fix/DPE-3961-4
Open

f2par0 wants to merge 4 commits into
tesb/camel-4.8.1.xfrom
fdeparscau/fix/DPE-3961-4

Conversation

@f2par0

@f2par0 f2par0 commented Sep 15, 2026

Copy link
Copy Markdown

Description

Cherry picks of thoses fixes :

CAMEL-23891 ccdeebc.
CAMEL-23584. 93cd4c4
CAMEL-23526 0138da4

Target

  • I checked that the commit is targeting the correct branch (Camel 4 uses the main branch)

Tracking

  • If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

  • I checked that each commit in the pull request has a meaningful subject line and body.
  • I have run mvn clean install -DskipTests locally from root folder and I have committed all auto-generated changes.

AI-assisted contributions

  • If this PR includes AI-generated code, commits have proper co-authorship attribution (e.g., Co-authored-by trailers) and the PR description identifies the AI tool used.

oscerd and others added 4 commits September 15, 2026 15:03
…al headers in MimeMultipartDataFormat unmarshal (apache#24445)

CAMEL-23891: camel-mail - filter Camel internal headers in MimeMultipartDataFormat unmarshal (apache#24406)

Signed-off-by: Andrea Cosentino <ancosen@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…der constant names with Camel naming convention (apache#23602)

Backport of apache#23602 (CAMEL-23584) to camel-4.14.x.

Renames the Exchange header string values in KafkaConstants from the
non-Camel-prefixed "kafka.*" namespace to the project-wide "CamelKafka*"
PascalCase convention. Java field names are unchanged (symbolic references
keep working); routes hard-coding the literal "kafka.*" header strings must
move to the new "CamelKafka*" values. Only the string values were changed on
this branch (4.14.x KafkaConstants differs from main and its structure is
otherwise preserved). Keeps the bundled transforms, the KafkaHeaderDeserializer,
and the camel-tracing / camel-telemetry KafkaSpanDecorator copies in sync, and
regenerates the catalog and endpoint DSL artifacts. The camel-opentelemetry2
test infra, core ImportantHeaderUtils, and important-headers.json do not exist
on this branch. The upgrade-guide entry is added on main (per the backport
upgrade-guide policy).

Tracker: CAMEL-23577

Closes apache#23632
…mel naming convention (apache#23326) (apache#23376)

* CAMEL-23526: camel-cxf - align Exchange header constant names with Camel naming convention

Rename the Exchange header string values in CxfConstants (camel-cxf-common,
shared by camel-cxf and camel-cxfrs) from operationName / operationNamespace
to CamelCxfOperationName / CamelCxfOperationNamespace. The Java field names
(OPERATION_NAME, OPERATION_NAMESPACE) are unchanged so routes and code that
reference the constants symbolically continue to work without changes; routes
that set the headers by their literal string value must be updated.

Updates the single test that set the headers by literal value, the CxfProducer
javadoc and the component documentation references, adds a 4.21 upgrade-guide
entry, and regenerates the component metadata, catalog, and endpoint DSL.

Consistent with the same alignment applied in CAMEL-23508, CAMEL-23515 and
CAMEL-23506.

Reported by Claude Code on behalf of Andrea Cosentino

* CAMEL-23526: camel-cxf - update cxfrs SimpleConsumer literal operationName usages after header constant rename

The previous commit renamed the CxfConstants.OPERATION_NAME header value to
CamelCxfOperationName. The cxfrs SimpleConsumer dispatch idiom routes on the
operation by its literal header name, so the test/itest routes that used the
old literal value were no longer matched and failed:

- camel-cxf-rest and camel-cxf-spring-rest CxfRsConsumerSimpleBindingTest /
  CxfRsConsumerSimpleBindingImplTest: simple("direct:${header.operationName}")
  updated to simple("direct:${header.CamelCxfOperationName}").
- camel-itest JettyRecipientListCxfIssueTest: literal "operationName" header
  updated to "CamelCxfOperationName".

Also expands the camel-cxf 4.21 upgrade-guide entry with an explicit
before/after for the documented cxfrs SimpleConsumer dispatch idiom, since the
rename changes that public pattern for existing user routes.

Reported by Claude Code on behalf of Andrea Cosentino

* CAMEL-23526: camel-cxf - document cross-transport propagation pattern for the renamed operation header

After the constant rename, CxfConstants.OPERATION_NAME = "CamelCxfOperationName"
is filtered by transport HeaderFilterStrategy (JmsHeaderFilterStrategy,
HttpHeaderFilterStrategy, etc.) at every transport boundary, by design — Camel*
headers are framework-internal and are not propagated over the wire.

For routes that bridge an external transport (JMS, HTTP, ...) into a cxf:
producer and select the SOAP operation from a sender-supplied header, the
documented pattern is to carry the operation in a non-Camel-prefixed
application header and map it to CamelCxfOperationName in the route between
the transport `from` and the cxf: `to`.

- Adds the carrier-header mapping to the JmsToCxfInOutTest route context
  (between the JMS `from` and the cxf: `to`) and aligns the test code to send
  the operation through the carrier header instead of CxfConstants.OPERATION_NAME.
- Aligns JettyRecipientListCxfIssueTest with the same carrier-header
  convention for the cross-HTTP path.
- Expands the 4.21 upgrade-guide entry with an explicit before/after example
  for the cross-transport bridge pattern, applicable to JMS, HTTP-based
  transports, and any other transport whose default HeaderFilterStrategy
  filters Camel*.

Reported by Claude Code on behalf of Andrea Cosentino

---------

Signed-off-by: Andrea Cosentino <ancosen@gmail.com>
@f2par0
f2par0 requested a review from a team as a code owner September 15, 2026 13:19
Comment thread pom.xml
@@ -109,8 +109,8 @@
<camel-activemq6.tesb.version>4.8.10-4.14.7-1</camel-activemq6.tesb.version>
<camel-aws2-sns.tesb.version>4.8.10-4.14.7-1</camel-aws2-sns.tesb.version>
<camel-cxf.tesb.version>4.8.1.20251008</camel-cxf.tesb.version>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<camel-cxf.tesb.version>4.8.1.20251008</camel-cxf.tesb.version>
<camel-cxf.tesb.version>4.8.10-4.14.7-1</camel-cxf.tesb.version>

Comment thread pom.xml
<camel-smb.tesb.version>4.8.1.20250320</camel-smb.tesb.version>
<camel-sql.tesb.version>4.8.1.20250320</camel-sql.tesb.version>
<camel-tika.tesb.version>4.8.1.20251208</camel-tika.tesb.version>
<camel-tracing.tesb.version>4.8.1.20250320</camel-tracing.tesb.version>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<camel-tracing.tesb.version>4.8.10-4.14.7-1</camel-tracing.tesb.version>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants