[
https://issues.apache.org/jira/browse/CAMEL-9564?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen reassigned CAMEL-9564:
----------------------------------
Assignee: Claus Ibsen
> EndpointHelper.resolveReferenceListParameter should not return immutable lists
> ------------------------------------------------------------------------------
>
> Key: CAMEL-9564
> URL: https://issues.apache.org/jira/browse/CAMEL-9564
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Affects Versions: 2.16.1
> Reporter: Jay mann
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 2.16.3, 2.17.0
>
>
> EndpointHelper.resolveReferenceListParameter can sometimes return immutable
> lists, which can cause issues when other components try to add items to those
> lists.
> The fact that other endpoints (like jetty-common JettyHttpComponent
> [enableCors line 279]) can add other components into the lists can cause hard
> to track down failures.
> Sorry don't have a patch file, but the lines i would fix in
> EndpointHelper.java would be:
> line 350: return Collections.emptyList();
> line 360: return Arrays.asList(elements.size())
> These should just return ArrayLists.
> I know these parameters should optionally be Lists already, and this is a
> slight performance hit when starting up, but i think it's better than trying
> to figure out what went wrong when it fails.
> My particular scenario was a Jetty endpoint with a filtersRef (with a single
> Filter - not a list) and then enableCORS=true. The filtersRef returned
> Arrays.asLIst and then enableCORS tried to add an element into that list and
> crashed.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)