[
https://issues.apache.org/jira/browse/CAMEL-24418?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on CAMEL-24418 started by Andrea Cosentino.
------------------------------------------------
> camel-http, camel-http-common, camel-undertow - do not resolve property
> placeholders in the CamelHttpUri header value
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-24418
> URL: https://issues.apache.org/jira/browse/CAMEL-24418
> Project: Camel
> Issue Type: Improvement
> Components: camel-http
> Reporter: Andrea Cosentino
> Assignee: Andrea Cosentino
> Priority: Major
> Fix For: 4.23.0
>
>
> Three HTTP producer helpers run property-placeholder resolution over the
> value of the CamelHttpUri message header:
> * camel-http HttpMethodHelper.createMethod() line 51 - guarded by
> skipControlHeaders, which defaults to false
> * camel-http-common HttpHelper.createMethod() line 336 - no guard (backs
> camel-servlet and camel-jetty)
> * camel-undertow UndertowHelper.createMethod() line 131 - no guard
> uriString = exchange.getContext().resolvePropertyPlaceholders(uriString);
> Property placeholders are a route/configuration-authoring feature; resolving
> them in a message header means a {{...}} token that only ever appears in
> message content is expanded against the application's property sources. This
> is the same inconsistency CAMEL-24282 addressed for toD and enrich, where the
> fix was to resolve at build time and treat a per-message {{...}} as a literal.
> Proposal: drop the per-message resolution at all three sites (the endpoint
> URI itself is already resolved at build time). If any use case genuinely
> depends on it, gate it behind an explicit opt-in rather than leaving it on by
> default.
> Behaviour change, so main only with an upgrade-guide entry. Note that
> camel-http-common and camel-undertow also lack the skipControlHeaders guard
> that camel-http has, so they are the more urgent of the three.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)