Hello, >From your traceback it looks like you are using ODMG. You must set >suto-update="false" when using ODMG. (or delete the line, since false is the default)
Bob c ---------------------------------------------------------------- Bob Celestino SAS Research and Development 919 - 531 - 9425 [EMAIL PROTECTED] SAS - The Power to Know > -----Original Message----- > From: Sukesh Garg [mailto:[EMAIL PROTECTED] > Sent: Monday, November 17, 2003 9:01 PM > To: OJB Users List > Subject: OJB Exception but insert is successful > > > Hi, > > I have the following relationship. > > ObjectA { > int id, //primary key of A > String name > } > > ObjectB { > int objectAid , // primary key with A.id=B.objectAid > String address > } > > When i perform an insert, i get the enclosed error but the > insert happens successfully. > > the dd is.. > <class-descriptor > class="com.codaware.ObjectA" > table="ObjectA" > > > <field-descriptor > name="id" > column="id" > jdbc-type="INTEGER" > primarykey="true" > autoincrement="true" > /> > <reference-descriptor > name="objectB" > class-ref="com.codaware.ObjectB" > auto-update="true" > auto-delete="true" > > > <foreignkey field-ref="id"/> > </reference-descriptor> > </class-descriptor> > <class-descriptor > class="com.codaware.ObjectB" > table="ObjectB" > > > <field-descriptor > name="objectAid" > column="objectAid" > jdbc-type="BIGINT" > primarykey="true" > /> > </class-descriptor> > > > I would really appreciate it if someone could help on this one.. .. > > thanks, > sukesh > > ps. I need this for an extend relationship. (trying to get > scenario 3) > > > > [java] java.sql.SQLException: Invalid argument value, message from > server: "Duplicate entry '321' for key 1" > [java] at > com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1626) > [java] at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:886) > [java] [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] > ERROR: SQLException during the execution of the insert (for a > com.codaware.ObjectB): Invalid argument value, message > from server: "Duplicate entry '321' for key1" [java] > Invalid argument value, > message from server: "Duplicate entry '321' for key 1" > [java] at > com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:945) > [java] at > com.mysql.jdbc.Connection.execSQL(Connection.java:1844) > [java] [org.apache.ojb.odmg.ObjectEnvelopeTable] ERROR: > Commit on object level failed for tx > [EMAIL PROTECTED] > [java] at > com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatem > ent.java:1602) > [java] at > com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatem > ent.java:1488) > [java] at > org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeInser > t(Unknown Source) > [java] at > org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(Un > known Source) > [java] at > org.apache.ojb.broker.core.PersistenceBrokerImpl.store(Unknow > n Source) > [java] at > org.apache.ojb.broker.core.PersistenceBrokerImpl.store(Unknow > n Source) > [java] at > org.apache.ojb.broker.core.DelegatingPersistenceBroker.store( > Unknown Source) > [java] at > org.apache.ojb.broker.core.DelegatingPersistenceBroker.store( > Unknown Source) > [java] at > org.apache.ojb.odmg.states.StateNewDirty.commit(Unknown Sourc > e) > [java] at > org.apache.ojb.odmg.ObjectEnvelopeTable.commitAllEnvelopes(Un > known Source) > [java] at > org.apache.ojb.odmg.ObjectEnvelopeTable.commit(Unknown Source > ) > [java] at > org.apache.ojb.odmg.TransactionImpl.doCommitOnObjects(Unknown > Source) > [java] at > org.apache.ojb.odmg.TransactionImpl.prepare(Unknown > Source) > [java] at > org.apache.ojb.odmg.TransactionImpl.commit(Unknown > Source) > > > > ------------------------------------------------------------ > --------- > 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]
