camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aki Yoshida (Commented) (JIRA)" <>
Subject [jira] [Commented] (CAMEL-4731) simpler wiring of Camel CXF endpoints to named CXF buses in spring
Date Fri, 02 Dec 2011 09:21:40 GMT


Aki Yoshida commented on CAMEL-4731:

Hi Dan,
the blueprint stuff is handled correctly in camel.

Regarding your second comment, I am not sure if it is straightforward to fix the issue within
CXF. Initially, I also tried to fix it by modifying CXF's AbstractBeanDefinitionParser's bus
attribute handling. But this lead to another issue that required a larger amount of changes.
The complication seems to come from the fact that the bus attribute is semantically used in
two different contexts (i.e., to reference a specific bus or to define a bus). 

The fix that I suggested is similar to what the current CXF jaxws endpoint implementation
does to get this wiring working. Another benefit of this camel based fix is that you can run
the fixed camel version against older CXF versions (so that we can stabilize the camel-cxf's
endpoint wiring convention without dependency to a specific version of CXF)

regards, aki
> simpler wiring of Camel CXF endpoints to named CXF buses in spring
> ------------------------------------------------------------------
>                 Key: CAMEL-4731
>                 URL:
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-cxf
>    Affects Versions: 2.8.3
>            Reporter: Aki Yoshida
>            Assignee: Daniel Kulp
>            Priority: Minor
>             Fix For: 2.8.4, 2.9.0
>         Attachments: patch.txt
> I think the current wiring configuration (used in those camel-cxf tests) for wiring CXF
endpoints to specific cxf bus instances using spring is cumbersome and not appealing. So,
I would like to suggest a patch for this problem.
> To start, here is how the the current configuration convention looks like:
> <beans ...>
>     <bean id="cxf1" class="org.apache.cxf.bus.extension.ExtensionManagerBus"/>
>     <bean id="cxf2" class="org.apache.cxf.bus.extension.ExtensionManagerBus"/>
>     <cxfcore:bus bus="cxf1">
>         ...
>     </cxfcore:bus>
>     <cxfcore:bus bus="cxf2">
>         ....
>     </cxfcore:bus>
>     <cxf:cxfEndpoint id="routerEndpoint"
>         serviceClass="..."
>         ...
>         bus="cxf1"/>
>     <cxf:cxfEndpoint id="serviceEndpoint"
>         serviceClass="..."
>         ...
>         bus="cxf2"/>
> </beans>
> I would like to get rid of the indirect wiring of the CXF endpoints using ExtensionManagerBus
beans. The attached patch for camel/trunk should directly wire the endpoints to the named
buses. I would appreciate if you can look at it.
> Thank you.
> regards, aki

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message