You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Chandra Bose Renganathan (JIRA)" <ji...@apache.org> on 2017/03/21 21:34:41 UTC

[jira] [Updated] (CAMEL-11044) CLONE - EndpointHelper.resolveReferenceListParameter should not return immutable lists

     [ https://issues.apache.org/jira/browse/CAMEL-11044?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chandra Bose Renganathan updated CAMEL-11044:
---------------------------------------------
    Fix Version/s:     (was: 2.16.3)
                       (was: 2.17.0)

> CLONE - EndpointHelper.resolveReferenceListParameter should not return immutable lists
> --------------------------------------------------------------------------------------
>
>                 Key: CAMEL-11044
>                 URL: https://issues.apache.org/jira/browse/CAMEL-11044
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.17.3
>            Reporter: Chandra Bose Renganathan
>            Assignee: Claus Ibsen
>            Priority: Minor
>
> 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.15#6346)