You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by Michelle Caisse <Mi...@Sun.COM> on 2005/08/04 20:49:12 UTC

embedded SimpleInterface, Object

Hi Craig,

I've mapped FieldsOfSimpleInterface and FieldsOfSimpleObject as we 
discussed previously on the alias (Additional fields for 
FieldsOfSimpleInterface, FieldsOfSimpleClass, FieldsOfObject).  I get an 
error:

test(org.apache.jdo.tck.models.fieldtypes.TestFieldsOfSimpleInterface)org.jpox.metadata.InvalidMetaDataException: 
Field 
"org.apache.jdo.tck.pc.fieldtypes.FieldsOfSimpleInterface.SimpleInterface1" 
is of type "org.apache.jdo.tck.pc.fieldtypes.SimpleInterface" yet has 
been specified as embedded. JPOX doesnt support embedding of this type. 
Your embedded type must be PersistenceCapable.

Same with Object.

Should I check in the changes or hold off for now?

-- Michelle

Re: embedded SimpleInterface, Object

Posted by Andy Jefferson <an...@jpox.org>.
> "org.apache.jdo.tck.pc.fieldtypes.FieldsOfSimpleInterface.SimpleInterface1"
> is of type "org.apache.jdo.tck.pc.fieldtypes.SimpleInterface" yet has
> been specified as embedded. JPOX doesnt support embedding of this type.
> Your embedded type must be PersistenceCapable.

I'm glad JPOX exception handling catches these situations :-)
JPOX supports embedding of PC instances, but *not* of interfaces.

It will get supported when we have time but, like Apache JDO and the TCK, we 
don't have large numbers of volunteers here so need to prioritise our work to 
coordinate with what the TCK is requiring.

It also comes down to which parts of the JDO2 spec are to be considered 
mandatory and which are optional. I don't recall any significant discussion 
of this in the EG.

-- 
Andy

Re: embedded SimpleInterface, Object

Posted by Craig Russell <Cr...@Sun.COM>.
Hi Michelle,

I think that embedding Object and SimpleInterface isn't really a  
requirement. I'll look at the spec again, but I think that the two  
strategies that are really useful and should be the focus of our  
testing are:

serializing the object into a blob column
referring via foreign key column to the primary table of the  
implementing class(es).

These are the common use cases, and so I'd suggest dropping the  
embedding-column-by-column strategy from the FieldsOfSimpleObject and  
FieldsOfSimpleInterface.

Does anyone think that the spec requires this strategy and it's  
common enough that we need TCK tests?

Craig

On Aug 4, 2005, at 11:49 AM, Michelle Caisse wrote:

> Hi Craig,
>
> I've mapped FieldsOfSimpleInterface and FieldsOfSimpleObject as we  
> discussed previously on the alias (Additional fields for  
> FieldsOfSimpleInterface, FieldsOfSimpleClass, FieldsOfObject).  I  
> get an error:
>
> test 
> (org.apache.jdo.tck.models.fieldtypes.TestFieldsOfSimpleInterface) 
> org.jpox.metadata.InvalidMetaDataException: Field  
> "org.apache.jdo.tck.pc.fieldtypes.FieldsOfSimpleInterface.SimpleInterf 
> ace1" is of type "org.apache.jdo.tck.pc.fieldtypes.SimpleInterface"  
> yet has been specified as embedded. JPOX doesnt support embedding  
> of this type. Your embedded type must be PersistenceCapable.
>
> Same with Object.
>
> Should I check in the changes or hold off for now?
>
> -- Michelle
>

Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:Craig.Russell@sun.com
P.S. A good JDO? O, Gasp!