|  | @ -10,7 +10,9 @@ import org.apache.camel.builder.RouteBuilder;
 | 
	
		
			
				|  |  | import org.apache.camel.processor.interceptor.DefaultTraceFormatter;
 | 
	
		
			
				|  |  | import org.apache.camel.processor.interceptor.Tracer;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
 | 
	
		
			
				|  |  | import org.springframework.stereotype.Component;
 | 
	
		
			
				|  |  | import org.springframework.web.context.support.SpringBeanAutowiringSupport;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.net.URL;
 | 
	
		
			
				|  |  | import java.net.URLClassLoader;
 | 
	
	
		
			
				|  | @ -29,6 +31,9 @@ public class CamelStartBoot {
 | 
	
		
			
				|  |  |     private BrokerServerService brokerServerService;
 | 
	
		
			
				|  |  |     private CamelContext context = SystemCamelContext.getContext();
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private AutowireCapableBeanFactory capableBeanFactory;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     public void setBrokerServerService(BrokerServerService brokerServerService) {
 | 
	
		
			
				|  |  |         this.brokerServerService = brokerServerService;
 | 
	
	
		
			
				|  | @ -47,7 +52,7 @@ public class CamelStartBoot {
 | 
	
		
			
				|  |  |             ClassLoader currentClassLoader = Thread.currentThread().getContextClassLoader();
 | 
	
		
			
				|  |  |             ClassLoader camelClassLoader = new URLClassLoader(URLs.toArray(new URL[]{}), currentClassLoader);
 | 
	
		
			
				|  |  |             Thread.currentThread().setContextClassLoader(camelClassLoader);
 | 
	
		
			
				|  |  |             context.setApplicationContextClassLoader(camelClassLoader);
 | 
	
		
			
				|  |  |             context.setApplicationContextClassLoader(currentClassLoader);
 | 
	
		
			
				|  |  |             logger.info("Apache Camel Context 启动完成...");
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
	
		
			
				|  | @ -61,6 +66,8 @@ public class CamelStartBoot {
 | 
	
		
			
				|  |  |                     Class<RouteBuilder> routeBuilderClass = (Class<RouteBuilder>) camelClassLoader.loadClass(className);
 | 
	
		
			
				|  |  |                     if (routeBuilderClass != null) {
 | 
	
		
			
				|  |  |                         RouteBuilder routeBuilder = routeBuilderClass.newInstance();
 | 
	
		
			
				|  |  |                         capableBeanFactory.autowireBean(routeBuilder);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |                         context.addRoutes(routeBuilder);
 | 
	
		
			
				|  |  |                     }
 | 
	
		
			
				|  |  |                 } catch (ClassNotFoundException e) {
 |