O que tem de errado nesse código?
Estou tentando colocar uma lista dentro da outra.
public List<Contato>getLista_cc () throws SQLException{
PreparedStatement stmt= this.connection.prepareStatement("SELECT local.descricao, defesa.prof1, defesa.prof2, defesa.prof3, defesa.prof4, defesa.numero, defesa.data, defesa.horario, candidatos.nome_aluno, candidatos.titulo, candidatos.tipo, professores.nome_professor FROM local INNER JOIN (professores INNER JOIN (candidatos INNER JOIN defesa ON candidatos.idc = defesa.candidato) ON professores.idp = candidatos.orientador) ON local.idl = defesa.local order by defesa.data;");
ResultSet rs=stmt.executeQuery();
//Segunda Consulta que quero acessar
PreparedStatement stmt1= this.connection.prepareStatement("SELECT defesa.prof1, defesa.numero, professores.nome_professor FROM defesa INNER JOIN professores ON professores.idp = defesa.prof1");
ResultSet rs1=stmt1.executeQuery();
ArrayList<Contato>list_cc = new ArrayList<Contato>();
while(rs.next()){
Contato c1=new Contato();
numerox=rs.getInt("numero");
c1.setNumero(rs.getInt("numero"));
c1.setData(rs.getDate("data"));
c1.setHorario(rs.getTime("horario"));
c1.setNome_aluno(rs.getString("nome_aluno"));
c1.setTitulo(rs.getString("titulo"));
c1.setTipo(rs.getBoolean("tipo"));
c1.setNome_professor(rs.getString("nome_professor"));
c1.setDescricao(rs.getString("descricao"));
c1.setProf1(rs.getInt("prof1"));
c1.setProf2(rs.getInt("prof2"));
c1.setProf3(rs.getInt("prof3"));
c1.setProf4(rs.getInt("prof4"));
list_cc.add(c1);
}
//Novo looping, sem ele funciona, mas não acesso a informação que quero que é o nome do Prof1.
while(rs1.next()){
ContatoProfessores c=new ContatoProfessores();
c.setNome_professor(rs.getString("nome_professor"));
list_cc.add(c);
}
rs.close();
rs1.close();
stmt.close();
stmt1.close();
return list_cc;
}
Testei o SQL dentro do Postgree e deu certo.
Mas, quando vai para a página, dá isso:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: javax.servlet.jsp.el.ELException: An error occurred while getting property “lista_cc” from an instance of class br.direito.defesas.dao.ContatoDAO
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:844)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
org.apache.jsp.rel_005fbancas_jsp._jspService(org.apache.jsp.rel_005fbancas_jsp:203)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
org.postgresql.util.PSQLException: ResultSet não está posicionado corretamente, talvez você precise chamar next.
org.postgresql.jdbc2.AbstractJdbc2ResultSet.checkResultSet(AbstractJdbc2ResultSet.java:2451)
org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1882)
org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:2184)
br.direito.defesas.dao.ContatoDAO.getLista_cc(ContatoDAO.java:157)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
org.apache.commons.el.ArraySuffix.evaluate(ArraySuffix.java:314)
org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:190)
org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:922)
org.apache.jsp.rel_005fbancas_jsp._jspx_meth_c_forEach_0(org.apache.jsp.rel_005fbancas_jsp:219)
org.apache.jsp.rel_005fbancas_jsp._jspService(org.apache.jsp.rel_005fbancas_jsp:185)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
Como faço essa outra lista, dentro da primeira?
Agradeço qualquer ajuda.

