You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2008/06/08 14:53:01 UTC

[jira] Commented: (CAMEL-494) CamelBeanPostProcessor.camelContext cannot be injected if SpringCamelContext is proxied (e.g. AOP)

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

Claus Ibsen commented on CAMEL-494:
-----------------------------------

Dan what version of Spring are you using?

> CamelBeanPostProcessor.camelContext cannot be injected if SpringCamelContext is proxied (e.g. AOP)
> --------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-494
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-494
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-spring
>    Affects Versions: 1.3.0
>            Reporter: Dean Thompson
>             Fix For: 1.4.0
>
>
> Because CamelBeanPostProcessor.setCamelContext(SpringCamelContext) takes the class SpringCamelContext as its parameter, bean initialization fails if SpringCamelContext is proxied.  The error is as follows:
> {code}
> org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'camelContext:beanPostProcessor': Initialization of bean failed; nested exception is org.springframework.beans.TypeMismatchException: Failed to convert property value of type [$Proxy61] to required type [org.apache.camel.spring.SpringCamelContext] for property 'camelContext'; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [$Proxy61] to required type [org.apache.camel.spring.SpringCamelContext] for property 'camelContext': no matching editors or conversion strategy found
> {code}
> In my project's Spring conf, we declare <aop:aspectj-autoproxy/>, which causes all Spring beans to be proxied.  This triggers the problem shown above.  The problem should be reproducible by adding <aop:aspectj-autoproxy/> to any Spring config that uses <camel:camelContext>.
> The fix will be to separate the interface and class for SpringCamelContext, and use the interface where appropriate.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.