Thread: Fwd: JDBC Array double precision [] error
Hi everyone! I need your help with this problem.
I'm using PostgreSQL 9.2 Server & the latest jdbc driver: postgresql-9.2-1002.jdbc4.jar
I have a table with this column array:
-- histograma double precision[]
And I want to retrieve this and cast into java to double[] but I can't.
This is the extract of the code:
Statement stat1 = con.createStatement();
ResultSet rs1 = stat1.executeQuery("SELECT * FROM \"Vector\");
while (rs1.next()) {
double[] array = (double[]) rs1.getArray("histograma").getArray();
}
And the error:
"
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: [Ljava.lang.Double; cannot be cast to [D
"
Also I tried to do a for loop but didn't work.
Can you help me?
Thanks a lot! ;)
Hi Juan Pablo, > double[] array = (double[]) rs1.getArray("histograma").getArray(); > java.lang.ClassCastException: [Ljava.lang.Double; cannot be cast to [D The error message already tells you the solution: use Double, not double. Like this: Double[] array = (Double[]) rs1.getArray("histograma").getArray(); Best regards, -hannes
Hi Hannes...
Thanks a lot for your help!
I was stuck being many many hours trying and googling it the problem but didn't realize that.
This: Double[] array = (Double[]) rs1.getArray("histograma").getArray(); solve my problem!
Thanks again!!
Juan Cook
On Sun, Mar 31, 2013 at 7:38 PM, Hannes Erven <hannes@erven.at> wrote:
Hi Juan Pablo,
> double[] array = (double[]) rs1.getArray("histograma").getArray();java.lang.ClassCastException: [Ljava.lang.Double; cannot be cast to [D
The error message already tells you the solution: use Double, not double.
Like this:
Double[] array = (Double[]) rs1.getArray("histograma").getArray();
Best regards,
-hannes