[ https://issues.apache.org/jira/browse/CAMEL-8349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Thomas Diesler updated CAMEL-8349: ---------------------------------- Description: During CamelContext.start() we may call into various 3rd party modules that rely on resource discovery through TCCL. Therefore, we should provide a well defined value for TCCL during context start. In the WildFly integration layer I attempted to do this using events. This approach is flawed however because there is no guarantee of event delivery. Conceptually, the requirement for a certain TCCL by 3rd party should not leak into client code. Instead, camel should be dealing with these TCCL requirements and provide client code a way to defined the ClassLoader associated with the context. the role of which is the ApplicationClassLoader. I therefore propose setting the TCCL to the ApplicationClassLoader (if there is one) just before we call into doStart() was: During CamelContext.start() we may call into various 3rd party modules that rely on resource discovery through TCCL. Therefore, we should provide a well defined value for TCCL during context start. In the WildFly integration layer I attempted to do this using events. This approach is flawed however because there is no guarantee of event delivery. I therefore propose setting the TCCL to the ApplicationClassLoader (if there is one) just before we call into doStart() > Context should be started with defined TCCL > ------------------------------------------- > > Key: CAMEL-8349 > URL: https://issues.apache.org/jira/browse/CAMEL-8349 > Project: Camel > Issue Type: Improvement > Components: camel-core > Affects Versions: 2.14.1 > Reporter: Thomas Diesler > > During CamelContext.start() we may call into various 3rd party modules that > rely on resource discovery through TCCL. Therefore, we should provide a well > defined value for TCCL during context start. > In the WildFly integration layer I attempted to do this using events. This > approach is flawed however because there is no guarantee of event delivery. > Conceptually, the requirement for a certain TCCL by 3rd party should not leak > into client code. Instead, camel should be dealing with these TCCL > requirements and provide client code a way to defined the ClassLoader > associated with the context. the role of which is the ApplicationClassLoader. > I therefore propose setting the TCCL to the ApplicationClassLoader (if there > is one) just before we call into doStart() -- This message was sent by Atlassian JIRA (v6.3.4#6332)