I discovered a problem with RC4 (RC3) concerning the Collection-Mapping.
If the name of the primary key member variable in both classes is exactly the same, then the save procedure skips same ids.
eg.: Status 1---n Person
If you add a new status with a collection of corresponding persons, then the person mapping with the same ID like the new status is skipped.
for example: you add a new status with ID=2 and want to link it to persons-ids 1,2,3, the mapping of person-id 2 is not created.
[repository]
<class-descriptor class="at.viatec.rio.ojb.person.Person"
table="PERSON">
<extent-class class-ref="at.viatec.rio.ojb.person.Customer"/>
<extent-class class-ref="at.viatec.rio.ojb.person.Supplier"/>
<extent-class class-ref="at.viatec.rio.ojb.person.Representative"/> <field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strFirstname"
column="NAME2"
jdbc-type="VARCHAR"/>
<field-descriptor id="4"
name="m_strLastname"
column="NAME1"
jdbc-type="VARCHAR"
nullable="false"/>
</class-descriptor> <class-descriptor class="at.viatec.rio.ojb.person.interfaces.IPerson">
<extent-class class-ref="at.viatec.rio.ojb.person.Person"/>
<extent-class class-ref="at.viatec.rio.ojb.person.Customer"/>
<extent-class class-ref="at.viatec.rio.ojb.person.Supplier"/>
<extent-class class-ref="at.viatec.rio.ojb.person.Representative"/>
</class-descriptor> <class-descriptor class="at.viatec.rio.ojb.person.Customer"
table="PERSON">
<field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strFirstname"
column="NAME2"
jdbc-type="VARCHAR"/>
<field-descriptor id="4"
name="m_strLastname"
column="NAME1"
jdbc-type="VARCHAR"
nullable="false"/>
<field-descriptor id="5"
name="m_intStatus"
column="FKSTATUS"
jdbc-type="INTEGER"/>
<field-descriptor id="6"
name="m_datDetails"
column="FIELD1"
jdbc-type="DATE"/><reference-descriptor name="m_objStatus" proxy="true"
class-ref="at.viatec.rio.ojb.status.StatusCustomer"
auto-update="true">
<foreignkey field-ref="m_intStatus"/>
</reference-descriptor>
</class-descriptor><class-descriptor class="at.viatec.rio.ojb.person.interfaces.ICustomer">
<extent-class class-ref="at.viatec.rio.ojb.person.Customer"/>
</class-descriptor>
<class-descriptor class="at.viatec.rio.ojb.person.Supplier"
table="PERSON">
<field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strFirstname"
column="NAME2"
jdbc-type="VARCHAR"/>
<field-descriptor id="4"
name="m_strLastname"
column="NAME1"
jdbc-type="VARCHAR"
nullable="false"/>
<field-descriptor id="5"
name="m_intStatus"
column="FKSTATUS"
jdbc-type="INTEGER"/>
<field-descriptor id="6"
name="m_strDetails"
column="FIELD2"
jdbc-type="VARCHAR"/><reference-descriptor name="m_objStatus" proxy="true"
class-ref="at.viatec.rio.ojb.status.StatusSupplier"
auto-retrieve="true"
auto-update="true">
<foreignkey field-ref="m_intStatus"/>
</reference-descriptor>
</class-descriptor>
<class-descriptor class="at.viatec.rio.ojb.person.interfaces.ISupplier">
<extent-class class-ref="at.viatec.rio.ojb.person.Supplier"/>
</class-descriptor>
<class-descriptor class="at.viatec.rio.ojb.person.Representative"
table="PERSON">
<field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strFirstname"
column="NAME2"
jdbc-type="VARCHAR"/>
<field-descriptor id="4"
name="m_strLastname"
column="NAME1"
jdbc-type="VARCHAR"
nullable="false"/>
<field-descriptor id="5"
name="m_intStatus"
column="FKSTATUS"
jdbc-type="INTEGER"/>
<field-descriptor id="6"
name="m_strDetails"
column="FIELD3"
jdbc-type="VARCHAR"/><reference-descriptor name="m_objStatus" proxy="true"
class-ref="at.viatec.rio.ojb.status.StatusRepresentative"
auto-retrieve="true"
auto-update="true">
<foreignkey field-ref="m_intStatus"/>
</reference-descriptor>
</class-descriptor>
<class-descriptor class="at.viatec.rio.ojb.person.interfaces.IRepresentative">
<extent-class class-ref="at.viatec.rio.ojb.person.Representative"/>
</class-descriptor>
<!-- Mappings status -->
<class-descriptor class="at.viatec.rio.ojb.status.Status"
table="STATUS">
<extent-class class-ref="at.viatec.rio.ojb.status.StatusCustomer"/>
<extent-class class-ref="at.viatec.rio.ojb.status.StatusSupplier"/>
<extent-class class-ref="at.viatec.rio.ojb.status.StatusRepresentative"/>
<field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strStatus"
column="DESCRIPTION"
jdbc-type="VARCHAR"
nullable="false"/>
</class-descriptor><class-descriptor class="at.viatec.rio.ojb.status.interfaces.IStatus">
<extent-class class-ref="at.viatec.rio.ojb.status.Status"/>
<extent-class class-ref="at.viatec.rio.ojb.status.StatusCustomer"/>
<extent-class class-ref="at.viatec.rio.ojb.status.StatusSupplier"/>
<extent-class class-ref="at.viatec.rio.ojb.status.StatusRepresentative"/>
</class-descriptor>
<class-descriptor class="at.viatec.rio.ojb.status.StatusCustomer"
table="STATUS">
<field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strStatus"
column="DESCRIPTION"
jdbc-type="VARCHAR"
nullable="false"/><collection-descriptor name="m_colCustomer" proxy="true"
element-class-ref="at.viatec.rio.ojb.person.Customer"
auto-update="true"
orderby="m_intID"
sort="ASC">
<inverse-foreignkey field-ref="m_intStatus"/>
</collection-descriptor>
</class-descriptor><class-descriptor class="at.viatec.rio.ojb.status.interfaces.IStatusCustomer">
<extent-class class-ref="at.viatec.rio.ojb.status.StatusCustomer"/>
</class-descriptor>
<class-descriptor class="at.viatec.rio.ojb.status.StatusSupplier"
table="STATUS">
<field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strStatus"
column="DESCRIPTION"
jdbc-type="VARCHAR"
nullable="false"/><collection-descriptor name="m_colSupplier" proxy="true"
element-class-ref="at.viatec.rio.ojb.person.Supplier"
orderby="m_strLastname"
sort="DESC"
auto-retrieve="true"
auto-update="true">
<inverse-foreignkey field-ref="m_intStatus"/>
</collection-descriptor>
</class-descriptor><class-descriptor class="at.viatec.rio.ojb.status.interfaces.IStatusSupplier">
<extent-class class-ref="at.viatec.rio.ojb.status.StatusSupplier"/>
</class-descriptor>
<class-descriptor class="at.viatec.rio.ojb.status.StatusRepresentative"
table="STATUS">
<field-descriptor id="1"
name="m_intID"
column="ID"
jdbc-type="INTEGER"
primarykey="true"
autoincrement="true"/>
<field-descriptor id="2"
name="ojbConcreteClass"
column="CLASS_NAME"
jdbc-type="VARCHAR"/>
<field-descriptor id="3"
name="m_strStatus"
column="DESCRIPTION"
jdbc-type="VARCHAR"
nullable="false"/><collection-descriptor name="m_colRepresentative" proxy="true"
element-class-ref="at.viatec.rio.ojb.person.Representative"
orderby="m_intID"
sort="DESC"
auto-retrieve="true"
auto-update="true">
<inverse-foreignkey field-ref="m_intStatus"/>
</collection-descriptor>
</class-descriptor><class-descriptor class="at.viatec.rio.ojb.status.interfaces.IStatusRepresentative">
<extent-class class-ref="at.viatec.rio.ojb.status.StatusRepresentative"/>
</class-descriptor>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
