[
https://issues.apache.org/jira/browse/CAMEL-20213?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen reassigned CAMEL-20213:
-----------------------------------
Assignee: Claus Ibsen
> camel-core - Dependency injection for @BeanInject for private fields
> --------------------------------------------------------------------
>
> Key: CAMEL-20213
> URL: https://issues.apache.org/jira/browse/CAMEL-20213
> Project: Camel
> Issue Type: Bug
> Components: camel-jbang, camel-main
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 4.3.0
>
>
> {code}
> import org.apache.camel.Configuration;
> import org.apache.camel.spi.IdempotentRepository;
> import org.apache.camel.processor.idempotent.jdbc.JdbcMessageIdRepository;
> import org.apache.camel.BeanInject;
> import org.apache.camel.BindToRegistry;
> import javax.sql.DataSource;
> @Configuration
> public class Testidempotentrepository {
> @BeanInject
> private DataSource dataSource;
> @BindToRegistry("Testidempotentrepository")
> public IdempotentRepository createIdempotentRegistry() {
> return new JdbcMessageIdRepository(dataSource, "some-key");
> }
> }
> {code}
> Fails with
> Caused by: java.lang.IllegalArgumentException: Property 'dataSource' is
> required
> at
> org.springframework.jdbc.datasource.DataSourceTransactionManager.afterPropertiesSet(DataSourceTransactionManager.java:235)
> at
> org.springframework.jdbc.datasource.DataSourceTransactionManager.<init>(DataSourceTransactionManager.java:146)
> at
> org.apache.camel.processor.idempotent.jdbc.AbstractJdbcMessageIdRepository.createTransactionTemplate(AbstractJdbcMessageIdRepository.java:116)
> at
> org.apache.camel.processor.idempotent.jdbc.AbstractJdbcMessageIdRepository.<init>(AbstractJdbcMessageIdRepository.java:77)
> at
> org.apache.camel.processor.idempotent.jdbc.JdbcMessageIdRepository.<init>(JdbcMessageIdRepository.java:61)
> at
> Testidempotentrepository.createIdempotentRegistry(Testidempotentrepository.java:16)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:568)
> at
> org.apache.camel.support.ObjectHelper.invokeMethod(ObjectHelper.java:425)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)