[
https://issues.apache.org/jira/browse/CAMEL-25120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-25120.
---------------------------------
Resolution: Fixed
Fixed by https://github.com/apache/camel/pull/27026
> camel-core - do not reject && in endpoint uris
> ----------------------------------------------
>
> Key: CAMEL-25120
> URL: https://issues.apache.org/jira/browse/CAMEL-25120
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 4.23.0
>
>
> DefaultComponent.validateURI rejects any endpoint uri containing && (Invalid
> uri syntax: Double && marker found), unless a RAW(...) somewhere in the uri
> contains &&. The check dates from 2008 when the query was split with a regexp
> on &.
> Today the check is not what catches a double & in the query: the uri is
> normalized first, which turns delay=250&&period=500 into
> ?=&delay=250&period=500, and the endpoint then fails with a confusing
> property binding error on an empty option name. Meanwhile the check rejects a
> legitimate && in the endpoint path, for example language:simple:${header.a}
> == 1 && ${header.b} == 2.
> Remove the check, and let the query parser ignore an empty parameter so
> a=1&&b=2 is the same as a=1&b=2.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)