Hi

Damn Spring, you are bad.

Is this the only unit tests which fails?


On Sat, Mar 27, 2010 at 10:04 AM, Willem Jiang <[email protected]> wrote:
> Hi,
>
> I'm trying to build the camel trunk code with Spring 3.0.1 and there are
> some tests failed in the camel-spring module.
>
> One kind of error is Spring 3.0.1 treats the camel property variable as the
> spEL variable (#{ <expression string> }) .
>
> It looks like we can't turn off the spEL parsering from Camel, I think we
> need to redefine the camel property variable to workaround this conflict.
>
> Here is one of stack traces:
> -------------------------------------------------------------------------------
> Test set: org.apache.camel.spring.JMXAgentPropertiesTest
> -------------------------------------------------------------------------------
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.181 sec
> <<< FAILURE!
> testQueryMbeans(org.apache.camel.spring.JMXAgentPropertiesTest)  Time
> elapsed: 1.161 sec  <<< ERROR!
> org.springframework.beans.factory.BeanCreationException: Error creating bean
> with name 'agent': Initialization of bean failed; nested exception is
> org.springframework.beans.factory.BeanExpressionException: Expression
> parsing failed; nested exception is
> org.springframework.expression.spel.SpelEvaluationException: EL1008E:(pos
> 0): Field or property 'myjmx' cannot be found on object of type
> 'org.springframework.beans.factory.config.BeanExpressionContext'
>        at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)
>        at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
>        at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
>        at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>        at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
>        at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
>        at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:562)
>        at
> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871)
>        at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423)
>        at
> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
>        at
> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
>        at
> org.apache.camel.spring.JMXAgentPropertiesTest.createApplicationContext(JMXAgentPropertiesTest.java:31)
>        at
> org.apache.camel.spring.SpringTestSupport.setUp(SpringTestSupport.java:47)
>        at
> org.apache.camel.spring.DefaultJMXAgentTest.setUp(DefaultJMXAgentTest.java:43)
>        at org.apache.camel.spring.JMXAgentTest.setUp(JMXAgentTest.java:40)
>        at junit.framework.TestCase.runBare(TestCase.java:132)
>        at junit.framework.TestResult$1.protect(TestResult.java:110)
>        at junit.framework.TestResult.runProtected(TestResult.java:128)
>        at junit.framework.TestResult.run(TestResult.java:113)
>        at junit.framework.TestCase.run(TestCase.java:124)
>        at junit.framework.TestSuite.runTest(TestSuite.java:232)
>        at junit.framework.TestSuite.run(TestSuite.java:227)
>        at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
>        at
> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
>        at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
>        at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:165)
>        at org.apache.maven.surefire.Surefire.run(Surefire.java:107)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:592)
>        at
> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:289)
>        at
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1005)
> Caused by: org.springframework.beans.factory.BeanExpressionException:
> Expression parsing failed; nested exception is
> org.springframework.expression.spel.SpelEvaluationException: EL1008E:(pos
> 0): Field or property 'myjmx' cannot be found on object of type
> 'org.springframework.beans.factory.config.BeanExpressionContext'
>        at
> org.springframework.context.expression.StandardBeanExpressionResolver.evaluate(StandardBeanExpressionResolver.java:140)
>        at
> org.springframework.beans.factory.support.AbstractBeanFactory.evaluateBeanDefinitionString(AbstractBeanFactory.java:1245)
>        at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.evaluate(BeanDefinitionValueResolver.java:224)
>        at
> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:200)
>        at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1308)
>        at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1067)
>        at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
>        ... 32 more
> Caused by: org.springframework.expression.spel.SpelEvaluationException:
> EL1008E:(pos 0): Field or property 'myjmx' cannot be found on object of type
> 'org.springframework.beans.factory.config.BeanExpressionContext'
>        at
> org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:180)
>        at
> org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:60)
>        at
> org.springframework.expression.spel.ast.CompoundExpression.getValueInternal(CompoundExpression.java:52)
>        at
> org.springframework.expression.spel.ast.SpelNodeImpl.getValue(SpelNodeImpl.java:93)
>        at
> org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:88)
>        at
> org.springframework.context.expression.StandardBeanExpressionResolver.evaluate(StandardBeanExpressionResolver.java:137)
>        ... 38 more
>
>
> Willem
>
>
>
>



-- 
Claus Ibsen
Apache Camel Committer

Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Reply via email to