Hello I want to create a mapping with this kind of configuration : 

CREATE TABLE A   (
        name VARCHAR(50),
        PRIMARY KEY (name)
);

CREATE TABLE B (
        name VARCHAR(50),
        a    VARCHAR(50),
        PRIMARY KEY (name, a),
        FOREIGN KEY (a) REFERENCES A (name)
);

CREATE TABLE C (
        name VARCHAR(50),
        a VARCHAR(50),
        PRIMARY KEY (name, a),
        FOREIGN KEY (a) REFERENCES A (name)
);

CREATE TABLE BtoC
(ouai
        b VARCHAR(50) PRIMARY KEY
        c VARCHAR(50) PRIMARY KEY,
        a VARCHAR(50) PRIMARY KEY,

        FOREIGN KEY (b, a) REFERENCES B (b, a),
        FOREIGN KEY (c, a) REFERENCES C (c, a)
)

<class-descriptor class="B" table="B">
        <field-descriptor id="1" name="name" column="name"                       
jdbc-type="VARCHAR" primarykey="true"/>
        <field-descriptor id="2" name="a" column="a"                     
jdbc-type="VARCHAR" primarykey="true"/>

        <collection-descriptor>
            <fk-pointing-to-this-class column="b"/>
            <fk-pointing-to-this-class column="a"/>
            <fk-pointing-to-element-class column="c"/>
            <fk-pointing-to-this-class column="a"/>             
        
        </collection-descriptor>
</class-descriptor>
<class-descriptor class="C" table="C">
        <field-descriptor id="1" name="name" column="name"                             
  
jdbc-type="VARCHAR" primarykey="true"/>
        <field-descriptor id="2" name="name" column="name"                             
  
jdbc-type="VARCHAR" primarykey="true"/> 
</class-descriptor>


With this configuration I get an SQL error :
INSERT INTO dsclusters (b,a,c,a) VALUES ( 'b','a','c','a' ) 
ERROR:  Attribute 'a' specified more than once

Is this due to the <collection-descriptor> element in class b ?

If i add a column in BtoC table that reference the a column of table C,
that works fine, so i can imagine that this configuration is a
limitation of OJB, am I wrong ?







-- 
Kevin Viet <[EMAIL PROTECTED]>
ActiVia Networks




--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to