Hi
I’m having some problem when I attempt to store the database.
It’s throwing the stack trace following stack trace
com.fedex.cih.jp.JPShipmentImpl.setMDEDetails(JPShipmentImpl.java:424) 2003-07-0 9 02:03:00,843 ERROR [ExecuteThread: '8' for queue: 'default'] jp.JPShipmentImpl (JPShipmentImpl.java:424) - org.apache.ojb.broker.PersistenceBrokerException: C ould not generate primary key values for given Identity com.fedex.data.ShipmentCoreClearanceImpl{2057001}, exception was java.lang.Array IndexOutOfBoundsException java.lang.ArrayIndexOutOfBoundsException at org.apache.ojb.broker.util.BrokerHelper.getKeyValues(BrokerHelper.java:263) at org.apache.ojb.broker.util.BrokerHelper.getKeyValues(BrokerHelper.java:204) at org.apache.ojb.broker.core.PersistenceBrokerImpl.assertFkAssignment(PersistenceBrokerImpl.java:730) at org.apache.ojb.broker.core.PersistenceBrokerImpl.assignReferenceFKs(PersistenceBrokerImpl.java:2104) at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1935) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1874) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:660) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:158) at com.fedex.cih.jp.JPShipmentImpl.setMDEDetails(JPShipmentImpl.java:370) at com.fedex.cih.ejb.ShipmentBean.setMDEDetails(ShipmentBean.java:159) at com.fedex.cih.ejb.ShipmentBean_6ssy2e_EOImpl.setMDEDetails(ShipmentBean_6ssy2e_EOImpl.java:202) at com.fedex.cih.ejb.ShipmentBean_6ssy2e_EOImpl_WLSkel.invoke(Unknown Source) at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:362) at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:313) at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:821) at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:308) at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189) rethrown as org.apache.ojb.broker.PersistenceBrokerException: Could not generate primary key values for given Identity com.fedex.data.ShipmentCoreClearanceImpl{2057001}, exception was java.lang.ArrayIndexOutOfBoundsException at org.apache.ojb.broker.util.BrokerHelper.getKeyValues(BrokerHelper.java:275) at org.apache.ojb.broker.util.BrokerHelper.getKeyValues(BrokerHelper.java:204) at org.apache.ojb.broker.core.PersistenceBrokerImpl.assertFkAssignment(PersistenceBrokerImpl.java:730) at org.apache.ojb.broker.core.PersistenceBrokerImpl.assignReferenceFKs(PersistenceBrokerImpl.java:2104) at org.apache.ojb.broker.core.PersistenceBrokerImpl.storeToDb(PersistenceBrokerImpl.java:1935) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:1874) at org.apache.ojb.broker.core.PersistenceBrokerImpl.store(PersistenceBrokerImpl.java:660) at org.apache.ojb.broker.core.DelegatingPersistenceBroker.store(DelegatingPersistenceBroker.java:158) at com.fedex.cih.jp.JPShipmentImpl.setMDEDetails(JPShipmentImpl.java:370) at com.fedex.cih.ejb.ShipmentBean.setMDEDetails(ShipmentBean.java:159) at com.fedex.cih.ejb.ShipmentBean_6ssy2e_EOImpl.setMDEDetails(ShipmentBean_6ssy2e_EOImpl.java:202) at com.fedex.cih.ejb.ShipmentBean_6ssy2e_EOImpl_WLSkel.invoke(Unknown Source) at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:362) at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:313) at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:821) at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:308) at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189) com.fedex.cih.jp.JPShipmentImpl.setMDEDetails(JPShipmentImpl.java:446) 2003-07-0 9 02:03:01,187 DEBUG [ExecuteThread: '8' for queue: 'default'] jp.JPShipmentImpl (JPShipmentImpl.java:446) - Closing broker in finally setMDEDetails() : TX
The problem happen when at the BrokerHelp
Where the class descriptor class is return 2 primary key And the identity class return only contains one (which is correct since at the reference mapping I’m only setting only one) |
<!--ShipmentCoreClearance class--> <class-descriptor class = "com.fedex.data.ShipmentCoreClearanceImpl" proxy="dynamic" schema="ENT" table = "SHIPMENT_CORE_CLEARANCE"> <field-descriptor id = "1" name = "shipmentOidNo" column = "SHIPMENT_OID_NBR" jdbc-type ="BIGINT" primarykey = "true" /> <field-descriptor id = "2" name = "locationCode" column = "LOCATION_CD" jdbc-type ="VARCHAR" primarykey = "true" />
................. </class-descriptor> <!--End ShipmentCoreClearance-->
<!--Shipment class--> <class-descriptor class = "com.fedex.data.ShipmentImpl" proxy="dynamic" schema="ENT" table = "SHIPMENT"> <field-descriptor id = "1" name = "shipmentOid" column = "SHIPMENT_OID_NBR" jdbc-type ="BIGINT" primarykey = "true" /> <field-descriptor id = "2" name = "mawbNo" column = "MAWB_NBR" jdbc-type ="VARCHAR" /> <field-descriptor id = "3" name = "destLocationCode" column = "DEST_LOCATION_CD" jdbc-type ="VARCHAR" /> <field-descriptor id = "4" name = "oriLocationCode" column = "ORIGIN_LOCATION_CD" jdbc-type ="VARCHAR" /> <field-descriptor id = "5" name = "awbNo" column = "AWB_NBR" jdbc-type ="VARCHAR" /> <field-descriptor id = "6" name = "shipmentDate" column = "SHIPMENT_DT" jdbc-type ="DATE" /> ........... <reference-descriptor name="shipmentCoreClearance" class-ref="com.fedex.data.ShipmentCoreClearanceImpl" <foreignkey field-ref="shipmentOid"/> </reference-descriptor> </class-descriptor> <!--End Shipment-->
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]