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

Freeman Yue Fang resolved CAMEL-19324.
--------------------------------------
    Fix Version/s: 3.18.7
                   3.20.5
                   4.0
       Resolution: Fixed

> Be able to convert all elements from CXF MessageContentsList.class to 
> String.class if not in "CXF Context"
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-19324
>                 URL: https://issues.apache.org/jira/browse/CAMEL-19324
>             Project: Camel
>          Issue Type: Improvement
>          Components: came-cxf
>            Reporter: Freeman Yue Fang
>            Assignee: Freeman Yue Fang
>            Priority: Minor
>             Fix For: 3.18.7, 3.20.5, 4.0
>
>
> Having
> {code}
>   MessageContentsList list = new MessageContentsList();
>         list.add("haha");
>         list.add("hehe");
> {code}
> {code}
>      from("timer:tick")
>                 .process(new Processor() {
>                     @Override
>                     public void process(Exchange exchange) throws Exception {
>                         exchange.getIn().setBody(list);
>                     }
>                 })
>                 .log("my body ${body}");
> {code}
> It prints "my body haha" but i would expect "my body [haha, hehe]" (as with 
> ArrayList). 
> If MessageContentsList is used in "CXF context", the first element is return 
> value, the other elements are Holders, so it has special logic in converter. 
> But if use MessageContentsList in non - "CXF context", it should be treated 
> as a general ArrayList, which can honour behaviour when converting to 
> String.class is needed(like in to.("log...") processor)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to