You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/10/26 22:00:00 UTC

[jira] [Commented] (CAMEL-12905) Camel context inconsistencies in Spring Cloud Environment

    [ https://issues.apache.org/jira/browse/CAMEL-12905?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16665702#comment-16665702 ] 

ASF GitHub Bot commented on CAMEL-12905:
----------------------------------------

oalles opened a new pull request #2581: CAMEL-12905: Camel context inconsistencies in Spring Cloud Environment 
URL: https://github.com/apache/camel/pull/2581
 
 
   CAMEL-12905: The trigger that starts the SpringCamelContext and that collect to routes to the camel context, needs to be a expected ContextRefreshedEvent that has been emitted by the ApplicationContext that instantiated the SpringCamelContext instance. 
   
   https://issues.apache.org/jira/browse/CAMEL-12905

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> Camel context inconsistencies in Spring Cloud Environment 
> ----------------------------------------------------------
>
>                 Key: CAMEL-12905
>                 URL: https://issues.apache.org/jira/browse/CAMEL-12905
>             Project: Camel
>          Issue Type: Bug
>            Reporter: omar alles
>            Priority: Major
>
> In a Spring Cloud environment some components might create a child application context that spring cloud mantains. Such is the case for Feign and Ribbon Clients. 
> See 7.2 - https://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-feign.html
> "A central concept in Spring Cloud’s Feign support is that of the named client. Each feign client is part of an ensemble of components that work together to contact a remote server on demand, and the ensemble has a name that you give it as an application developer using the @FeignClient annotation. Spring Cloud creates a new ensemble as an ApplicationContext on demand for each named client using FeignClientsConfiguration."
> This child application contexts are going to be an ApplicationEvent source for the SpringCamelContext and RoutesCollector component who are defined as  ApplicationEvent listeners in a parent context.
> SpringCamelContext is intended to be started after a ContextRefreshedEvent.
> RoutesCollector intends to add routes to the camel context after a ContextRefreshedEvent.
> When there are child application contexts (ContextRefreshedEvent emitters)  we end up having some inconsistencies in the camel context lifecycle.
>  
> To reproduce the issue see:
> https://github.com/oalles/camel-cloud-bug
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)