[
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)