yikes, that means you use subclassing.
I recommend to use the openjpa-maven-plugin to enhance the classes at build time already. Here is a sample which you can look at https://github.com/struberg/lightweightEE/blob/master/backend-api/pom.xml We still need to polish our own documentation, but the parameters are almost the same as in the old version which you can find at [1]. The openjpa-maven-plugin is not part of OpenJPA itself since 2.2.0. LieGrue, strub [1] http://mojo.codehaus.org/openjpa-maven-plugin/usage.html ----- Original Message ----- > From: Chris Joysn <joys...@gmail.com> > To: users@openjpa.apache.org > Cc: > Sent: Wednesday, August 8, 2012 7:04 PM > Subject: Re: Annotations removed when enhancing? > > well... i am not so an experienced OpenJPA user but i can provide the > following information: > > before merging the entity to an persistence context the class of the entity > looks like: > > org.activiti.standalone.jpa.FieldAccessJPAEntity@4260ab > > after the merge it looks like: > > org.apache.openjpa.enhance.org > $activiti$standalone$jpa$FieldAccessJPAEntity$pcsubclass@df88d2 > > when performing an > > private boolean isEntityAnnotationPresent(Class<?> clazz) { > return (clazz.getAnnotation(Entity.class) != null); > } > > the Entity.class annotation is found before the merge, not not after the > merge. > > And when subclassing is bad, how can i get rid of it? > > Chris > > On 8 August 2012 15:55, Kevin Sutter <kwsut...@gmail.com> wrote: > >> > What way of enhancement do you use in your project? >> > If you use subclassing, then the generated subclass is probably > without >> annotations. >> >> And, if you are using subclassing, then quit using subclassing! :-) >> Nobody that is serious about their application should be using subclassing >> support. I've even been throwing around the idea of removing the >> subclassing support altogether since it can cause more issues than it >> resolves... But, that's a whole separate discussion... >> >> Kevin >> >> On Wed, Aug 8, 2012 at 1:13 AM, Mark Struberg <strub...@yahoo.de> > wrote: >> >> > >> > >> > Kevin is right. I re-checked it now as well. At least for build-time >> > enhanced entities the annotations remain on the class and fields. We > do >> not >> > use method annotations, so I cannot check this quickly. >> > >> > What confused me earlier is that jad (java decompiler) doesn't > seem to >> > show annotations in general. But looking at the hex dump of the class >> file >> > itself clearly shows that they are there. >> > >> > What way of enhancement do you use in your project? >> > If you use subclassing, then the generated subclass is probably > without >> > annotations. >> > >> > >> > LieGrue, >> > strub >> > >> > >> > >> > ----- Original Message ----- >> > > From: Kevin Sutter <kwsut...@gmail.com> >> > > To: users@openjpa.apache.org >> > > Cc: >> > > Sent: Tuesday, August 7, 2012 5:21 PM >> > > Subject: Re: Annotations removed when enhancing? >> > > >> > > I'm curious why you think that the annotations are > removed... Even >> after >> > > enhancement is performed, OpenJPA parses the entity classes to > get the >> > ORM >> > > data, which is normally specified via annotations. Do you have > an >> > example? >> > > >> > > Kevin >> > > >> > > On Sun, Aug 5, 2012 at 1:09 PM, Chris Joysn > <joys...@gmail.com> wrote: >> > > >> > >> well.. unfortunately a framework relies on it to detect JPA >> > entities... i >> > >> think there is no other way to detect in a reliable way JPA > entities? >> > >> >> > >> LieGrueZuRue >> > >> >> > >> >> > >> On 5 August 2012 19:52, Mark Struberg > <strub...@yahoo.de> wrote: >> > >> >> > >> > Having code relying on @Entity is bitter so to say ;) >> > >> > >> > >> > All JPA functions could also be added via XML, without > having any >> > >> > annotation on your entities... >> > >> > >> > >> > Such code would btw also not work in Hibernate if you > use proxies. >> > >> Becasue >> > >> > the generated proxies don't have annotations > neither. >> > >> > >> > >> > LieGrue, >> > >> > strub >> > >> > >> > >> > >> > >> > >> > >> > ----- Original Message ----- >> > >> > > From: Chris Joysn <joys...@gmail.com> >> > >> > > To: users@openjpa.apache.org >> > >> > > Cc: >> > >> > > Sent: Sunday, August 5, 2012 7:19 PM >> > >> > > Subject: Annotations removed when enhancing? >> > >> > > >> > >> > > Hello, >> > >> > > >> > >> > > is it possible that entities do not get their > annotations removed >> > > when >> > >> > > OpenJPA is performing its enhancements? >> > >> > > >> > >> > > unfortunately some code relies on the fact that > eg. @Entity is >> > > present >> > >> on >> > >> > > classes, but this annotation gets removed by > OpenJPA. >> > >> > > >> > >> > > thanks >> > >> > > >> > >> > >> > >> >> > > >> > >> >