CacheRowSetImpl with Oracle

Hi, I have a error in a function, the command is executed in the database, but, in the application I have a error, the function is:

public String testInvoice(String tradetype, long invoice, double value){

String message = new String("Sucess!!!");

CachedRowSetXImpl rowSet = new CachedRowSetXImpl();

try{

rowSet.setDataSourceName("java:comp/env/jdbc/SoloRosas");

String command = "UPDATE SOLOROSAS.FLOWERINVOICES SET SUBTOTAL = ? WHERE TRADETYPE LIKE ? AND INVOICE = ?";

rowSet.setCommand(command);

rowSet.setDouble(1, value);

rowSet.setString(2,tradetype);

rowSet.setLong(3, invoice);

rowSet.execute(); <<< In this point appear the error

rowSet.commit();

}catch(SQLException sqle){

message = sqle.toString();

}finally{

if(rowSet != null){

rowSet.close();

}

}

return message;

}

The database is Oracle 9i, I dont know what is my error please help me

thanks

[1008 byte] By [r_salazar@hotmail.com] at [2007-11-26 10:31:25]
# 1
I am not 100% sure, but since I use Oracle too, I think I want to take a guess. I believe in oracle there is no double, long type. All numeric data is stored in NUMBER type format in oracle. This translates into a java.math.BigDecimal type in java. So try to use setBigDecimal() instead.
discusfish at 2007-7-7 2:38:38 > top of Java-index,Development Tools,Java Tools...