Java - OJB

 
Vista:

OJB

Publicado por Worzy (1 intervención) el 22/01/2010 12:28:16
Buenos días, estoy teniendo problemas con un mapeo en OJB.
Tengo dos tablas (T1, T2), una de las cuales (T1) tiene la FK hacia la otra (T2).
La PK de T2 (a su vez FK de T1) se genera mediante un trigger, ya que se arma con la concatenacion de dos campos.
Mi repository es:

(T1)
<class-descriptor class="com.inetpsa.ree.persistence.bean.Site" table="REEQT07">
<field-descriptor primarykey="true" column="shppdv" jdbc-type="char" name="codePDV"/>
<field-descriptor primarykey="true" column="shpcod" jdbc-type="char" name="code"/>
<field-descriptor column="shplbl" jdbc-type="varchar" name="label"/>
<field-descriptor column="shprrdi" jdbc-type="char" name="rrdi"/>
<reference-descriptor name="rattachement"
class-ref="com.inetpsa.ree.persistence.bean.Rrdi" auto-delete="false" auto-retrieve="true" refresh="true" auto-update="false">
<foreignkey field-ref="rrdi"/>
</reference-descriptor>
<attribute attribute-name="cacheable" attribute-value="false"/>
</class-descriptor>

(T2)
<class-descriptor class="com.inetpsa.ree.persistence.bean.Rrdi" table="REEQT16">
<field-descriptor primarykey="true" name="rrdiCode" column="rrdicod" jdbc-type="char"/>
<field-descriptor name="rrdiCodeFct" column="rrdicodfct" jdbc-type="char"/>
<attribute attribute-name="cacheable" attribute-value="false"/>
</class-descriptor>

Lo que intento hacer es:
broker.store(T2)
broker.store(T1)
Al hacer esto, lanza un exception indicando que la FK no puede ser null, con lo que deduzco que despues del primer store, no tengo generada la PK de T2, con lo cuál es de esperar un error así.
Alguien sabe como puedo resolver este problema?
Muchas gracias y saludos.
Pablo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder