Hi
If a parent object has a child with more children, all are one to many
relationships, then the child of the parent gets created before the parent
and hence the reference to the parent in that child is not populated
before its creation in the DB....
I have autostore == true;
Object mapping:
The parent Object is fullContactInformation
If I comment out the last three field entries in FullUserInformation
mapping then FullUserInformation is created correctly with
FullContactInformation's OrganistaionOID as the reference value, however
once any of these three are uncommented then it seems like
FullUserInformation is created then its children then
FullContactInformation and the true OrganisationOID doesn't not get written
to the DB...
This is not a desirable action, is there a way to fix this, am I doing
something fundamentally wrong...
If you can help thanks...
<class name="exedra.data.FullContactInformation"
identity="OrganisationOID" key-generator="HIGH/LOW">
<description>Properties Map</description>
<map-to table="Organisation" xml="Organisation" />
<field name="OrganisationOID" type="integer">
<sql name="OrganisationOID" type="integer"/>
</field>
<field name="Name" type="string">
<sql name="Name" type="varchar"/>
</field>
<field name="Logo" type="string">
<sql name="Logo" type="varchar"/>
</field>
<field name="OrganisationCategoryOID" type="integer">
<sql name="OrganisationCategoryOID" type="integer"/>
</field>
<field name="BusinessTypeOID" type="integer">
<sql name="BusinessTypeOID" type="integer"/>
</field>
<field name="Comment" type="string" >
<sql name="Comment" type="varchar"/>
</field>
<!--
<field name="ContactInformation" type="exedra.data.FullUserInformation" >
<sql many-key="OrganisationOID"/>
</field>
<field name="ContactInformation"
type="exedra.data.FullUserInformation" required="true" collection="vector">
<sql many-key="ObjectOID"/>
</field>
-->
<field name="InternetAddresses" type="exedra.db.jdo.Internet"
required="true" collection="vector">
<sql many-key="ObjectOID"/>
</field>
<field name="PhoneNumbers" type="exedra.db.jdo.Phone" required="true"
collection="vector">
<sql many-key="ObjectOID"/>
</field>
<field name="Addresses" type="exedra.db.jdo.Address" required="true"
collection="vector">
<sql many-key="ObjectOID"/>
</field>
<field name="OrganisationsWhoHaveMeAsAContact"
type="exedra.data.Organisation" required="true" collection="vector">
<sql many-table="ContactsMap" many-key="OrganisationOID"/>
</field>
<field name="ContactInformation"
type="exedra.data.FullUserInformation" required="true" collection="vector">
<sql many-key="ObjectOID"/>
</field>
</class>
<class name="exedra.data.FullUserInformation" identity="ContactOID"
key-generator="HIGH/LOW">
<description>Properties Map</description>
<map-to table="Contact" xml="Contact" />
<field name="ContactOID" type="integer">
<sql name="ContactOID" type="integer"/>
</field>
<field name="FirstName" type="string">
<sql name="FirstName" type="varchar"/>
</field>
<field name="MiddleInitial" type="string">
<sql name="MiddleInitial" type="varchar"/>
</field>
<field name="LastName" type="string">
<sql name="LastName" type="varchar"/>
</field>
<!--
<field name="OrganisationInformation"
type="exedra.data.FullContactInformation">
<sql name="OrganisationOID"/>
</field>
-->
<field name="OrganisationOID" type="integer">
<sql name="OrganisationOID" type="integer"/>
</field>
<field name="ObjectOID" type="integer">
<sql name="ObjectOID" type="integer"/>
</field>
<field name="MainContact" type="boolean">
<sql name="MainContact" type="bit"/>
</field>
<field name="InternetAddresses" type="exedra.db.jdo.Internet"
required="true" collection="vector">
<sql many-key="ObjectOID"/>
</field>
<!--
<field name="PhoneNumbers" type="exedra.db.jdo.Phone" required="true"
collection="vector">
<sql many-key="ObjectOID"/>
</field>
<field name="Addresses" type="exedra.db.jdo.Address" required="true"
collection="vector">
<sql many-key="ObjectOID"/>
</field>
-->
</class>
</mapping>
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
unsubscribe castor-dev