openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Ezzio (asmtp)" <>
Subject Re: How to query on interface in OpenJPA
Date Mon, 09 Jul 2007 17:32:14 GMT
Hi Marc,

I took your suggestion and got an error when using the interface whether 
for a select or delete query.  The error is "No metadata was found for 
type "interface problem.model.IData". The class is not enhanced."

I did include the interface in the list of classes in persistence.xml 
without any complain during enhancement or mapping-validation.  The 
mappingtool creates two tables, one for SensorData and one for PublicData.

I've attached a zip of the text file with the testing code and stack trace.

Any insights welcomed.



Marc Prud'hommeaux wrote:
> David-
> According to the spec, "interfaces should not be designated as 
> entities", and if you can't declare it as an entity, then you don't have 
> anywhere to specify its interface name.
> The Kodo JDO layer on top of OpenJPA does support querying on 
> interfaces, though. I wonder if it would work if you did "select i from 
> com.somepackage.IData i". If that raises an error, can you post the 
> stack trace?
> On Jun 22, 2007, at 7:08 PM, David Ezzio wrote:
>> Hi everyone,
>> I've recently run into a bug in Kodo JDO that appears to be occurring in
>> OpenJPA. I have a test case that fails in Kodo JDO, but I'm stumped how
>> to port the test case to OpenJPA.
>> My test case has two data classes and one interface that each class
>> implements. SensorData and PublicData are the data classes and IData is
>> the interface. The interface and classes are very simple.
>> What I need to do is query on the interface, and I don't know how to do
>> it.  I don't know how to annotate the interface or whether I should.  I
>> don't know how to write the query.  A simple, "select i from IData i"
>> would be just fine if it worked.
>> Any suggestions?
>> Thanks,
>> David Ezzio
>> Notice:  This email message, together with any attachments, may 
>> contain information  of  BEA Systems,  Inc.,  its subsidiaries  and  
>> affiliated entities,  that may be confidential,  proprietary,  
>> copyrighted  and/or legally privileged, and is intended solely for the 
>> use of the individual or entity named in this message. If you are not 
>> the intended recipient, and have received this message in error, 
>> please immediately return this by email and then delete it.

View raw message