camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Laurent Chiarello (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-9431) TypeConverter autoconfiguration leads to invalid shutdown sequence
Date Mon, 01 Feb 2016 08:15:40 GMT

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

Laurent Chiarello commented on CAMEL-9431:
------------------------------------------

Same issue with {{2.16.2}}

> TypeConverter autoconfiguration leads to invalid shutdown sequence
> ------------------------------------------------------------------
>
>                 Key: CAMEL-9431
>                 URL: https://issues.apache.org/jira/browse/CAMEL-9431
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-spring-boot
>    Affects Versions: 2.16.1
>            Reporter: Laurent Chiarello
>            Priority: Minor
>             Fix For: 2.16.3, 2.17.0
>
>         Attachments: CamelSpringBootShutdownTest.java
>
>
> When using autoconfiguration provided by the {{camel-spring-boot}} artifact,  a {{TypeConverter}}
bean is automatically registered into the Spring context: 
> {code:title=TypeConversionConfiguration.java}
> @Bean
> TypeConverter typeConverter(CamelContext camelContext) {
>     return camelContext.getTypeConverter();
> }
> {code}
> The returned bean is an instance of {{DefaultTypeConverter}}, which in turn implements
{{ServiceSupport}} and its method {{public void shutdown()}}. This method is infered as a
_destroy-method_ by Spring, and called during the shutdown of the ApplicationContext. 
> As a consequence, the TypeConverter will be destroyed before the CamelContext, effectively
preventing any type conversion support for the inflight messages that have still to be processed
during the graceful shutdown period of Camel. 
> AFAIK the simple fix would be to disable the destroy-method inference using {{@Bean(destroyMethod="")}}.
This will let Camel have a chance to perform a clean shutdown in the right sequence. 
> As a workaround, it is possible to entirely disable the registration of the type converter
in Spring using the property
> {{camel.springboot.type-conversion = false}}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message