I am trying to fill a Object[][]
array with Object[]
like you would add rows to a table. But all I get is a java.lang.ArrayStoreException
at the line data[resultSet.getRow() - 1]= mailbox;
.
Whare am I worng?
The SQL part is working
public static Object[][] getMailboxes() {
PreparedStatement statement = null;
ResultSet resultSet = null;
Object[][] data = null;
try {
statement = conn.prepareStatement(GET_MAILBOX, ResultSet.TYPE_SCROLL_INSENSITIVE,
CONCUR_READ_ONLY);
statement.execute();
resultSet = statement.getResultSet();
ResultSetMetaData rsmd = resultSet.getMetaData();
resultSet.last();
data = new String[resultSet.getRow()][7];
resultSet.beforeFirst();
Object[] mailbox = new Object[7];
while (resultSet.next()) {
for (int i = 0; i < 7; i++) {
System.out.println(i+" column of row "+resultSet.getRow());
if (0 == i) {
mailbox[i] = resultSet.getInt(i + 1);
} else if (6 == i || 5 == i) {
mailbox[i] = resultSet.getBoolean(i + 1);
} else {
mailbox[i] = resultSet.getObject(i + 1);
}
}
data[resultSet.getRow() - 1]= mailbox;
}
} catch (SQLException e) {
e.printStackTrace();
}
return data;
}