geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ueberbach, Michael" <michael.ueberb...@dbh.de>
Subject AW: Problems using openJPA
Date Tue, 17 Jul 2007 16:25:44 GMT
Hi Jacek,

I had to make a little break, now I'm trying to get back to the last situation.

Following your last advices: 

reducing the persistance.xml to the neccessary elements works for deploying, but does not
help in fetching data. In fact the same exception 
(...Could not locate metadata for the class ...) is thrown.

I checked the code again:
- no field is annotated
- every getter is annotated (at least with @Basic)
- every other method named with get... Is annotated @Transient

Therefore the access type has to be clear (= PROPERTY). Nevertheless this is not recognized.

So I've tried two things:

First:
I put a xml mapping  file (orm.xml) inside the deployment jar, where I explicitly set the
access type to PROPERTY for all classes.
The deployment works, but the warning 

"<1.0.0-SNAPSHOT-SNAPSHOT nonfatal user error> org.apache.openjpa.util.UserException:
Type "de.lama.sample3.stammdaten.ejb.PersonBean" attempts to use both field and property access.
Only one access method is permitted."

remains and the method call still doesn't work.

Second:
I deployed the whole stuff unchanged (except the deployment plan) to a jboss server(4.04)
to compare the results. Here everything works as expected.

As result it seems to me that if there isn't an error inside the deployed code that jboss
does not find, there must be something wrong with parsing the classes annotations in geronimo
resp. openjpa.


regards
Michael


-----Urspr√ľngliche Nachricht-----
Von: Ueberbach, Michael [mailto:michael.ueberbach@dbh.de] 
Gesendet: Dienstag, 10. Juli 2007 18:06
An: user@geronimo.apache.org; jacek@laskowski.net.pl
Betreff: AW: Problems using openJPA

Hi Jacek,

Thanks for your hints. To the first point: I've already seen this in the spec. I'm quite shure
there is no access via the instance variables (but I will prove it again). I will also try
to eliminate the entries in persistance.xml that are not neccessary. I'll tell the results
as soon as possible.

Michael

-----Urspr√ľngliche Nachricht-----
Von: eljotpl@gmail.com [mailto:eljotpl@gmail.com] Im Auftrag von Jacek Laskowski
Gesendet: Dienstag, 10. Juli 2007 11:19
An: user@geronimo.apache.org
Betreff: Re: Problems using openJPA

On 7/10/07, Ueberbach, Michael <michael.ueberbach@dbh.de> wrote:
> Hello Jacek,
>
> meanwhile I'm able to send the jar I deployed to geronimo. I attach it to this mail,
sources should be included. Also the persistence.xml that is used.
> As you can see I put @Basic annotations to all property getters explicitly (although
I think this should be default) to make shure that access should be done by property (and
not by field). Nevertheless this seems not be recognized by openJPA. It would be great if
you have any idea why and what should be done.

Hi Michael,

I've just started looking into it, but thought I'd tell you that when you use property-based
access (via getters) you should not access the entity state via instance fields.

You don't need to specify vendor element in the persistence.xml file.
Geronimo defaults to OpenJPA. According to the spec (6.2.1.4 provider
p.135):

The provider element must be specified if the application is dependent upon a particular persistence
provider being used.

You don't need to specify class elements in Java EE env (as opposed to Java SE env). The container
looks for other files unless exclude-unlisted-classes element is specified (which is not the
case in your example).

See if that helps out. Going to spot other (mis)uses of the spec that might cause the trouble.

Jacek

--
Jacek Laskowski
http://www.JacekLaskowski.pl

Mime
View raw message