Urgent -ARRAY creation gives Exception-" Fail to convert to internal representation"
Hi ,
I am encountering ERROR when trying to create ARRAY in one case
while the same code works perfectly in other case.
-----------------------------------------------------
The following code works fine:
Connection con=getConnection();
String[][] elements = new String[1][2];
elements[0][0] =new Long(1111).toString();
elements[0][1] =new Long(2222).toString();
ArrayDescriptor desc = ArrayDescriptor.createDescriptor("TYPE1",con);
toReturn = new ARRAY(desc,con,elements);
-----------------------------------------------------
The following CODE GIVES ERROR :
Connection con=getConnection();
String[] elements = new String[1];
elements[0] =new Long(1111).toString();
ArrayDescriptor desc = ArrayDescriptor.createDescriptor("TYPE2",con);
toReturn = new ARRAY(desc,con,elements);
Stack:
java.sql.SQLException: Fail to convert to internal representation: [I@13
void oracle.jdbc.dbaccess.DBError.throwSqlException(java.lang.String, java.lang.String, int)
void oracle.jdbc.dbaccess.DBError.throwSqlException(int, java.lang.Object)
void oracle.jdbc.dbaccess.DBError.check_error(int, java.lang.Object)
oracle.sql.Datum[] oracle.jdbc.oracore.OracleTypeADT.toDatumArray(java.lang.Object, oracle.jdbc.driver.OracleConnection, long, int)
oracle.sql.Datum[] oracle.jdbc.oracore.OracleTypeUPT.toDatumArray(java.lang.Object, oracle.jdbc.driver.OracleConnection, long, int)
oracle.sql.Datum[] oracle.sql.ArrayDescriptor.toOracleArray(java.lang.Object, long, int)
void oracle.sql.ARRAY.<init>(oracle.sql.ArrayDescriptor, java.sql.Connection, java.lang.Object)
void com.cramer.inventory.Test.createIDlistARRAYObject()
void com.cramer.inventory.Test.main(java.lang.String[])
---------------------------------------------------------
Please help.
FYI :
type TYPE1 is table of OBJECT : (ID NUMBER, Name VARCHAR2(50));
type TYPE2 is table of OBJECT : (ID NUMBER);
I tried to pass array of long ,int etc in case of TYPE2 but with no advantage.
Regards,
Rajeev