[ https://issues.apache.org/jira/browse/JDO-702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andy Jefferson closed JDO-702. ------------------------------ > Support for specification of embedded inherited objects > ------------------------------------------------------- > > Key: JDO-702 > URL: https://issues.apache.org/jira/browse/JDO-702 > Project: JDO > Issue Type: New Feature > Components: api, specification, tck > Affects Versions: JDO 3 (3.0) > Reporter: Andy Jefferson > Assignee: Craig L Russell > Fix For: JDO 3.1-rc1 > > Attachments: JDO-702-test.patch, JDO-702.patch > > > While JDO2+ allows specification of embedded objects stored with primary > objects, it doesn't have any specific way of specifying the embedded object > as being inherited and how you would persist it. In particular there is no > way to define a discriminator (column) for the embedded object. If we have an > example from the JDO spec, and if we have a subclass of Address as also > persistable, then we need to specify the discriminator for "primaryAddress" > field. > <class name="Employee" table="EMP"> > ... > <!-- field type is Address --> > <field name="primaryAddress"> > <embedded null-indicator-column="PADDR_STREET"> > <discriminator column="PADDR_DISCRIM"/> > <field name="street" column="PADDR_STREET"/> > <field name="city" column="PADDR_CITY"/> > <field name="state" column="PADDR_STATE"/> > <field name="zip" column="PADDR_ZIPCODE"/> > </embedded> > </field> > </class> > So the XSD/DTD need updates to allow <discriminator> under <embedded>, the > JDO Metadata API needs to allow this also, and the @Embedded annotation needs > a "discriminator" attribute adding. -- This message was sent by Atlassian JIRA (v6.3.4#6332)