[
https://issues.apache.org/jira/browse/CAMEL-7229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13915628#comment-13915628
]
Sergey Beryozkin commented on CAMEL-7229:
-----------------------------------------
Hi Willem
Sure, the idea in your original comment above [1] sounds OK. So,
1. If the route sets a custom bus on the client bean then it will still be
protected/kept in place as long as the the endpoint uses a default bus or the
same custom bus.
(this will work after your proposed fix)
2. If we have the client bean using the default bus and we have the endpoint
using a custom bus as in "bus=#MyBus" then the custom bus will be set on the
client bean, as per the camel-cxf rules, this is fine too.
(this works now and will work after your proposed fix)
There's only one case I'm concerned about:
3. The client and the server have both custom but different buses.
That is why I thought that the rule " (a)Set the client bus only if the cxfrs
endpoint is not using the default bus and (b) the client bean has the default
bus" will ensure 1. and 2. cases are still supported as expected today, but we
the client does set its own unique bus then this bus is protected. It will
probably make sense for WS producers too...
Note (a) - is what you propose, which is good, and (b) is what I propose to
add...
Do you think it makes sense to keep the non-default custom buses on the client
bean ? We have it working right now by extending the client bean and blocking
the overriding of the bus, so if 3, is not implemented then it won't be an
issue for us, but I wonder, does it makes sense to preserve the custom client
buses or not
Thanks, Sergey
> [cxfrs] Producer override bean bus
> ----------------------------------
>
> Key: CAMEL-7229
> URL: https://issues.apache.org/jira/browse/CAMEL-7229
> Project: Camel
> Issue Type: Bug
> Components: camel-cxf
> Affects Versions: 2.12.1
> Reporter: Alexey Markevich
> Priority: Minor
>
> Bean configuration:
> org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean cf_cCXFRS_1 = new
> org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean();
> cf_cCXFRS_1.setBus(customBus);
> Route:
> .to("cxfrs://bean://cCXFRS_1")
> But at
> org.apache.camel.component.cxf.jaxrs.CxfRsProducer.invokeHttpClient(Exchange)
> cfb.setBus(((CxfRsEndpoint)getEndpoint()).getBus());
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)