Não vejo onde sua consulta é executada (como statement.executeQuery()), mas esse tipo de erro geralmente acontece quando o cursor não está bem posicionado. Você precisa chamar algo como
rs.next()
ou rs.first()
para mover o cursor e, em seguida, para obter o resultado.