当Spring上下文被销毁时,Spring Servlet应用程序上下文是否会停止Camel ProducerTemplate?

时间:2014-01-15 00:23:36

标签: spring apache-camel

我有一个带有以下XML的Spring Servlet应用程序上下文:

...
<camelContext xmlns="http://camel.apache.org/schema/spring" id="camelContext">
    <contextScan />
    <template id="aProducerTemplate" />
</camelContext>
...

用法如下:

@Service
public class MyService {

    @Autowired
    private ProducerTemplate aProducerTemplate;   
    ...

由于生成器模板是Spring Servlet应用程序上下文中的托管bean,它将在初始化Spring应用程序上下文时调用aProducerTemplate.start(),并在应用程序上下文被销毁时调用aProducerTemplate.stop()吗?

1 个答案:

答案 0 :(得分:0)

Spring Servlet Application Context将启动所有bean,包括CamelContextProducerTemplate属于CamelContext,将由Camel作为camel上下文启动过程的一部分启动。

因此,当您在ProducerTemplate中访问MyService时,{{1}}将被初始化并启动。