you have to declare all PK fields in the collection/reference-descriptor inverse-foreignkey/foreignkey tags.
McCaffrey, John G. wrote:
I am trying to join two tables A and B table A has three primary keys Main_ID Node_ID Process_Date
table B has two primary keys Node_ID Process_Date
my mapping has the Table A object containing a collection of B obj
ok, you have an 1:n reference from A to B, thus your collection-descriptor should look like
<class-descriptor for A> ... <collection-descriptor name="allBs" element-class-ref="B" proxy="false" auto-retrieve="true" > <inverse-foreignkey field-ref="FK_node_ID"/> <inverse-foreignkey field-ref="FK_main_ID"/> <inverse-foreignkey field-ref="FK_process_date"/> </collection-descriptor> ... </class-descriptor>
Means your B class needs three FK fields (to map the PK of A).
regards, Armin
I want to join the collection using the Node_ID, because it is the only thing they can be joined on
when I do the mapping
<collection-descriptor name="aObj" element-class-ref="x.x.x.AObj"
proxy="false" auto-retrieve="true" > <inverse-foreignkey field-ref="node_ID"/>
</collection-descriptor>
it complains about an arrayIndexOutOfBounds but it works when the only primary key is Node_ID
i don't get it
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]