[ 
https://issues.apache.org/activemq/browse/CAMEL-80?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James Strachan resolved CAMEL-80.
---------------------------------

    Resolution: Fixed

Patch applied with thanks! can you double check all the patches you intended 
have been applied correctly please? We can reopen if we've missed anything

> JpaIdempotentConsumerTest fails on multiple runs
> ------------------------------------------------
>
>                 Key: CAMEL-80
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-80
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-jpa
>         Environment: win/32
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>             Fix For: 1.2.0
>
>         Attachments: camel-80.patch, camel-jpa.patch
>
>
> Caused by: 
> <4|true|0.9.6-incubating> org.apache.openjpa.persistence.ArgumentException: 
> The type "class org.apache.camel.processor.idempotent.jpa.MessageProcessed" 
> has not been enhanced.
>       at 
> org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1590)
>       at 
> org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1564)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:654)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:554)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:479)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:283)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getClassMetaData(JPQLExpressionBuilder.java:162)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.resolveClassMetaData(JPQLExpressionBuilder.java:131)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:211)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:181)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateType(JPQLExpressionBuilder.java:174)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.access$500(JPQLExpressionBuilder.java:61)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder$ParsedJPQL.populate(JPQLExpressionBuilder.java:1657)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLParser.populate(JPQLParser.java:52)
>       at 
> org.apache.openjpa.kernel.ExpressionStoreQuery.populateFromCompilation(ExpressionStoreQuery.java:145)
>       at 
> org.apache.openjpa.kernel.QueryImpl.newCompilation(QueryImpl.java:642)
>       at 
> org.apache.openjpa.kernel.QueryImpl.compilationFromCache(QueryImpl.java:623)
>       at 
> org.apache.openjpa.kernel.QueryImpl.compileForCompilation(QueryImpl.java:589)
>       at 
> org.apache.openjpa.kernel.QueryImpl.compileForExecutor(QueryImpl.java:651)
>       at org.apache.openjpa.kernel.QueryImpl.getOperation(QueryImpl.java:1464)
>       at 
> org.apache.openjpa.kernel.DelegatingQuery.getOperation(DelegatingQuery.java:120)
>       at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:202)
>       at 
> org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:251)
>       at 
> org.springframework.orm.jpa.JpaTemplate$9.doInJpa(JpaTemplate.java:313)
>       at org.springframework.orm.jpa.JpaTemplate.execute(JpaTemplate.java:191)
>       at 
> org.springframework.orm.jpa.JpaTemplate.executeFind(JpaTemplate.java:158)
>       at org.springframework.orm.jpa.JpaTemplate.find(JpaTemplate.java:305)
>       at 
> org.apache.camel.processor.idempotent.jpa.JpaMessageIdRepository$1.doInTransaction(JpaMessageIdRepository.java:76)
>       at 
> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:127)
>       at 
> org.apache.camel.processor.idempotent.jpa.JpaMessageIdRepository.contains(JpaMessageIdRepository.java:73)
>       at 
> org.apache.camel.processor.idempotent.IdempotentConsumer.process(IdempotentConsumer.java:57)
>       at 
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:77)
>       at 
> org.apache.camel.component.direct.DirectEndpoint.process(DirectEndpoint.java:65)
>       at 
> org.apache.camel.component.direct.DirectEndpoint$1.process(DirectEndpoint.java:54)
>       at org.apache.camel.util.ProducerCache.send(ProducerCache.java:91)
>       at org.apache.camel.CamelTemplate.send(CamelTemplate.java:93)
>       at 
> org.apache.camel.processor.IdempotentConsumerTest.sendMessage(IdempotentConsumerTest.java:51)
>       at 
> org.apache.camel.processor.IdempotentConsumerTest.testDuplicateMessagesAreFilteredOut(IdempotentConsumerTest.java:40)
>       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:585)
>       at junit.framework.TestCase.runTest(TestCase.java:168)
>       at junit.framework.TestCase.runBare(TestCase.java:134)
>       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.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
>       at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
> [                          main] DeadLetterChannel              ERROR On 
> delivery attempt: 3 caught: 
> org.springframework.dao.InvalidDataAccessApiUsageException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.; nested exception is <4|true|0.9.6-incubating> 
> org.apache.openjpa.persistence.ArgumentException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.
> org.springframework.dao.InvalidDataAccessApiUsageException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.; nested exception is <4|true|0.9.6-incubating> 
> org.apache.openjpa.persistence.ArgumentException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.
> Caused by: 
> <4|true|0.9.6-incubating> org.apache.openjpa.persistence.ArgumentException: 
> The type "class org.apache.camel.processor.idempotent.jpa.MessageProcessed" 
> has not been enhanced.
>       at 
> org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1590)
>       at 
> org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1564)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:654)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:554)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:479)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:283)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getClassMetaData(JPQLExpressionBuilder.java:162)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.resolveClassMetaData(JPQLExpressionBuilder.java:131)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:211)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:181)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateType(JPQLExpressionBuilder.java:174)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.access$500(JPQLExpressionBuilder.java:61)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder$ParsedJPQL.populate(JPQLExpressionBuilder.java:1657)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLParser.populate(JPQLParser.java:52)
>       at 
> org.apache.openjpa.kernel.ExpressionStoreQuery.populateFromCompilation(ExpressionStoreQuery.java:145)
>       at 
> org.apache.openjpa.kernel.QueryImpl.newCompilation(QueryImpl.java:642)
>       at 
> org.apache.openjpa.kernel.QueryImpl.compilationFromCache(QueryImpl.java:623)
>       at 
> org.apache.openjpa.kernel.QueryImpl.compileForCompilation(QueryImpl.java:589)
>       at 
> org.apache.openjpa.kernel.QueryImpl.compileForExecutor(QueryImpl.java:651)
>       at org.apache.openjpa.kernel.QueryImpl.getOperation(QueryImpl.java:1464)
>       at 
> org.apache.openjpa.kernel.DelegatingQuery.getOperation(DelegatingQuery.java:120)
>       at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:202)
>       at 
> org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:251)
>       at 
> org.springframework.orm.jpa.JpaTemplate$9.doInJpa(JpaTemplate.java:313)
>       at org.springframework.orm.jpa.JpaTemplate.execute(JpaTemplate.java:191)
>       at 
> org.springframework.orm.jpa.JpaTemplate.executeFind(JpaTemplate.java:158)
>       at org.springframework.orm.jpa.JpaTemplate.find(JpaTemplate.java:305)
>       at 
> org.apache.camel.processor.idempotent.jpa.JpaMessageIdRepository$1.doInTransaction(JpaMessageIdRepository.java:76)
>       at 
> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:127)
>       at 
> org.apache.camel.processor.idempotent.jpa.JpaMessageIdRepository.contains(JpaMessageIdRepository.java:73)
>       at 
> org.apache.camel.processor.idempotent.IdempotentConsumer.process(IdempotentConsumer.java:57)
>       at 
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:77)
>       at 
> org.apache.camel.component.direct.DirectEndpoint.process(DirectEndpoint.java:65)
>       at 
> org.apache.camel.component.direct.DirectEndpoint$1.process(DirectEndpoint.java:54)
>       at org.apache.camel.util.ProducerCache.send(ProducerCache.java:91)
>       at org.apache.camel.CamelTemplate.send(CamelTemplate.java:93)
>       at 
> org.apache.camel.processor.IdempotentConsumerTest.sendMessage(IdempotentConsumerTest.java:51)
>       at 
> org.apache.camel.processor.IdempotentConsumerTest.testDuplicateMessagesAreFilteredOut(IdempotentConsumerTest.java:40)
>       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:585)
>       at junit.framework.TestCase.runTest(TestCase.java:168)
>       at junit.framework.TestCase.runBare(TestCase.java:134)
>       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.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
>       at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
> [                          main] DeadLetterChannel              ERROR On 
> delivery attempt: 4 caught: 
> org.springframework.dao.InvalidDataAccessApiUsageException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.; nested exception is <4|true|0.9.6-incubating> 
> org.apache.openjpa.persistence.ArgumentException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.
> org.springframework.dao.InvalidDataAccessApiUsageException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.; nested exception is <4|true|0.9.6-incubating> 
> org.apache.openjpa.persistence.ArgumentException: The type "class 
> org.apache.camel.processor.idempotent.jpa.MessageProcessed" has not been 
> enhanced.
> Caused by: 
> <4|true|0.9.6-incubating> org.apache.openjpa.persistence.ArgumentException: 
> The type "class org.apache.camel.processor.idempotent.jpa.MessageProcessed" 
> has not been enhanced.
>       at 
> org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1590)
>       at 
> org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1564)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:654)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:554)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:479)
>       at 
> org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:283)
>       at 
> org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getClassMetaData(JPQLExpressionBuilder.java:162)
> [...]

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

Reply via email to