openjpa-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marc Logemann <marc.logem...@gmail.com>
Subject Re: trying to run JPA Console inside Intellij IDEA results in this....
Date Thu, 22 Sep 2016 20:38:30 GMT
Just looking around in OpenJPA code i wonder why my enhanced
Distribution.class is calling the ProxySetupStateManager.providedIntField()
Method (which always throws Exceptions) instead of calling
StateManagerImpl.class method.

I am really wondering if nobody is using OpenJPA in the JPA console from
Jetbrains IDEA IDE.



2016-09-22 21:59 GMT+02:00 Marc Logemann <marc.logemann@gmail.com>:

> Compiled from "Distribution.java"
>
> public class de.netversys.domain.Distribution extends de.netversys.domain.AbstractEntity
> implements org.apache.openjpa.enhance.PersistenceCapable {
>
>
> So. Yes. it is enhanced. Same goes for other classes i checked. Must be
> something different.
>
> 2016-09-22 10:15 GMT+02:00 Mark Struberg <struberg@yahoo.de.invalid>:
>
>> oh another thing which makes me curious.
>>
>> IIRC then we only use the
>> ProxySetupStateManager.java:230in case of subclassing if the entities
>> did not get properly enhanced at all.
>>
>> This means you are not using build-time enhancement and also no javaagent.
>>
>> Can you please check the classfile?
>>
>> $> javap -c target/classes/de/netversys/domain/Distribution.class | less
>>
>>
>> And check whether the class has a PersistenceCapable interface in the
>> bytecode.
>>
>> LieGrue,
>> strub
>>
>>
>>
>>
>> > On Thursday, 22 September 2016, 8:02, Mark Struberg
>> <struberg@yahoo.de.INVALID> wrote:
>> > > Yes, it contains the number of the field it has problems with as int.
>> >
>> > Counting of fields start with the uppermost entity class. The fild
>> numbers get
>> > generated during enhancement.
>> >
>> > LieGrue,
>> > Strub
>> >
>> >
>> >>  Am 21.09.2016 um 23:25 schrieb Marc Logemann
>> > <marc.logemann@gmail.com>:
>> >>
>> >>  And when u look at the stacktrace on this line:
>> >>
>> >>  at de.netversys.domain.Distribution.pcProvideField(Distribution.java)
>> >>
>> >>  you see a method which wouldnt be there if the class is not enhanced
>> right?
>> >>
>> >>  2016-09-21 22:00 GMT+02:00 Mark Struberg <struberg@yahoo.de.invalid>:
>> >>>  MappedSuperclasses should not be any problem. At least if it got
>> > enhanced as well. Are you missing this probably?
>> >>>
>> >>>  LieGrue,
>> >>>  strub
>> >>>
>> >>>
>> >>>
>> >>>  On Wednesday, 21 September 2016, 21:57, Marc Logemann
>> > <marc.logemann@gmail.com> wrote>
>> >>>  >Hi,
>> >>>  >
>> >>>  >
>> >>>  >yeah. Every entity extends AbstractEntity which is a
>> > MappedSuperclass.
>> >>>  >
>> >>>  >
>> >>>  >2016-09-21 20:15 GMT+02:00 Mark Struberg
>> > <struberg@yahoo.de.invalid>:
>> >>>  >
>> >>>  >Hi Marc!
>> >>>  >>
>> >>>  >>Is the entity Distribution part of a supertype/subtype
>> > constellation aka inheritance?
>> >>>  >>Does this class 'extends' something? And where do these
>> > classes reside?
>> >>>  >>
>> >>>  >>
>> >>>  >>LieGrue,
>> >>>  >>strub
>> >>>  >>
>> >>>  >>
>> >>>  >>
>> >>>  >>
>> >>>  >>
>> >>>  >>
>> >>>  >>> On Wednesday, 21 September 2016, 18:27, Marc Logemann
>> > <marc.logemann@gmail.com> wrote:
>> >>>  >>> > can somebody hint me where i need to look out for?
>> > Quite weird message....
>> >>>  >>>
>> >>>  >>>
>> >>>  >>> [2016-09-21 18:24:13] <openjpa-2.4.0-r422266:1674604
>> > fatal user error>
>> >>>  >>> org.apache.openjpa. persistence.ArgumentException: Errors
>> > encountered while
>> >>>  >>> resolving metadata.  See nested exceptions for details.
>> >>>  >>> [2016-09-21 18:24:13] java.lang.RuntimeException:
>> >>>  >>> <openjpa-2.4.0-r422266:1674604 fatal general error>
>> >>>  >>> org.apache.openjpa. persistence. PersistenceException:
>> > Unexpected attribute
>> >>>  >>> type "int" for persistence-capable class
>> >>>  >>> "de.netversys.domain. Distribution"
>> >>>  >>> is detected. If the entity is packaged in a jar file,
this
>> > may be caused by
>> >>>  >>> one or more inherited class of the entity not being
>> > packaged in the same
>> >>>  >>> jar file. Please check all inherited class(es) are
>> > packaged in the same jar
>> >>>  >>> file.
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. ProxySetupStateManager.
>> > providedIntField( ProxySetupStateManager.java: 230)
>> >>>  >>> at de.netversys.domain. Distribution.pcProvideField(
>> > Distribution.java)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. ProxySetupStateManager.
>> > setProxyData( ProxySetupStateManager.java: 62)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. ClassMetaData.resolveMeta(
>> > ClassMetaData.java:1927)
>> >>>  >>> at org.apache.openjpa.meta. ClassMetaData.resolve(
>> > ClassMetaData.java:1808)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. MetaDataRepository.
>> > processBuffer( MetaDataRepository.java:829)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. MetaDataRepository. resolveMeta(
>> > MetaDataRepository.java:726)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. MetaDataRepository.resolve(
>> > MetaDataRepository.java:650)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. MetaDataRepository.
>> > getMetaDataInternal( MetaDataRepository.java:418)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. MetaDataRepository. getMetaData(
>> > MetaDataRepository.java:389)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.meta. MetaDataRepository. getMetaData(
>> > MetaDataRepository.java:472)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. jpql.JPQLExpressionBuilder.
>> > getClassMetaData( JPQLExpressionBuilder.java: 175)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. jpql.JPQLExpressionBuilder.
>> > resolveClassMetaData( JPQLExpressionBuilder.java: 151)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. jpql.JPQLExpressionBuilder.
>> > getCandidateMetaData( JPQLExpressionBuilder.java: 241)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. jpql.JPQLExpressionBuilder.
>> > getCandidateMetaData( JPQLExpressionBuilder.java: 211)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. jpql.JPQLExpressionBuilder.
>> > getCandidateType( JPQLExpressionBuilder.java: 204)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. jpql.JPQLExpressionBuilder.
>> > access$200( JPQLExpressionBuilder.java:79)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. jpql.JPQLExpressionBuilder$
>> > ParsedJPQL.populate( JPQLExpressionBuilder.java: 2426)
>> >>>  >>> at org.apache.openjpa.kernel. jpql.JPQLParser.populate(
>> > JPQLParser.java:60)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. ExpressionStoreQuery.
>> > populateFromCompilation( ExpressionStoreQuery.java:162)
>> >>>  >>> at org.apache.openjpa.kernel. QueryImpl.newCompilation(
>> > QueryImpl.java:672)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. QueryImpl.
>> > compilationFromCache( QueryImpl.java:653)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. QueryImpl.
>> > compileForCompilation( QueryImpl.java:619)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa.kernel. QueryImpl.compileForExecutor(
>> > QueryImpl.java:681)
>> >>>  >>> at org.apache.openjpa.kernel. QueryImpl.compile(QueryImpl.
>> > java:588)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa. persistence.EntityManagerImpl.
>> > createQuery(EntityManagerImpl. java:996)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa. persistence.EntityManagerImpl.
>> > createQuery(EntityManagerImpl. java:978)
>> >>>  >>> at
>> >>>  >>> org.apache.openjpa. persistence.EntityManagerImpl.
>> > createQuery(EntityManagerImpl. java:101)
>> >>>  >>> at
>> >>>  >>> com.intellij.jpa.remote.impl. RemoteEntityManagerImpl.
>> > createQuery( RemoteEntityManagerImpl.java: 39)
>> >>>  >>>
>> >>>  >>
>> >>>  >
>> >>>  >
>> >>>  >
>> >>
>> >
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message