Hi,

in the Spring Data Forum we are discussing a problem which might be a OpenJPA 
Bug. Please visit this thread as it contains all the stuff one needs to check 
this issue:
http://forum.springsource.org/showthread.php?113890-issue-with-Like-Or-and-nested-Properties-in-SpringData-JPA

I am coding against OpenJPA 2.1.0 and the problem arises when JpaQueryBuilder 
will create a Like Predicate. 

Little stack trace also here ;-)

Caused by: java.lang.IllegalArgumentException: Attribute "pickBarcode.orderId" 
of any not found in de.logentis.bwh.model.AlphaScan
        at 
org.apache.openjpa.persistence.meta.AbstractManagedType.notFoundException(AbstractManagedType.java:734)
        at 
org.apache.openjpa.persistence.meta.AbstractManagedType.getAttribute(AbstractManagedType.java:237)
        at 
org.apache.openjpa.persistence.meta.AbstractManagedType.getAttribute(AbstractManagedType.java:461)
        at 
org.apache.openjpa.persistence.criteria.PathImpl.get(PathImpl.java:270)
        at 
org.springframework.data.jpa.repository.query.JpaQueryCreator.toPredicate(JpaQueryCreator.java:204)
        at 
org.springframework.data.jpa.repository.query.JpaQueryCreator.create(JpaQueryCreator.java:102)
        at 
org.springframework.data.jpa.repository.query.JpaQueryCreator.create(JpaQueryCreator.java:51)
        at 
org.springframework.data.repository.query.parser.AbstractQueryCreator.createCriteria(AbstractQueryCreator.java:90)
        at 
org.springframework.data.repository.query.parser.AbstractQueryCreator.createQuery(AbstractQueryCreator.java:68)
        at 
org.springframework.data.jpa.repository.query.PartTreeJpaQuery.createCountQuery(PartTreeJpaQuery.java:101)
        at 
org.springframework.data.jpa.repository.query.JpaQueryExecution$PagedExecution.doExecute(JpaQueryExecution.java:106)
        at 
org.springframework.data.jpa.repository.query.JpaQueryExecution.execute(JpaQueryExecution.java:55)
        at 
org.springframework.data.jpa.repository.query.AbstractJpaQuery.doExecute(AbstractJpaQuery.java:100)
        at 
org.springframework.data.jpa.repository.query.AbstractJpaQuery.execute(AbstractJpaQuery.java:89)
        at 
org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.invoke(RepositoryFactorySupport.java:336)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
        at 
org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:155)
        ... 30 more

pickBarcode is an embedded attribute in AlphaScan and orderId is an attribute 
in PickBarcode. When issueing the same query without like, everything is fine. 
Spring Data JPA abstracts developers form creating the queries themselves and 
instead we only need to create an interface with a method name which exposes 
the query with some special syntax.

THanks for input on this. I could easily debug this stuff but i really dont 
want to dig through OpenJPA internals. But if i can help by providing some 
variables values or something, i am willing to help solving this.

---
regards
Marc Logemann
http://www.logemann.org
http://www.logentis.de




Reply via email to