Foros del Web » Programación para mayores de 30 ;) » Java »

No entiendo el error - ayuda

Estas en el tema de No entiendo el error - ayuda en el foro de Java en Foros del Web. hola a todos estoy haciendo unas consultas a la BD para luego mostrar la informacion Código: <% String Dato1 = "SELECT DISTINCT CONCAT(PrimNomUsr,' ',SegNomUsr,' ',PrimApeUsr,' ...
  #1 (permalink)  
Antiguo 26/11/2010, 22:05
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
No entiendo el error - ayuda

hola a todos

estoy haciendo unas consultas a la BD para luego mostrar la informacion

Código:
<%
 
   String Dato1 = "SELECT DISTINCT CONCAT(PrimNomUsr,' ',SegNomUsr,' ',PrimApeUsr,' ',SegApeUsr,' ',Identif,' ',CodEst) AS Nombre   FROM TP_Usuarios, TR_Alumnos WHERE CodEst = '"+request.getParameter("busca")+"'"+"AND TP_Usuarios.IdUsr = TR_Alumnos.IdUsr";
   String Dato2 = "SELECT CONCAT(NomMat,' - ',PrimNomUsr,' ',PrimApeUsr) AS Clases FROM TP_Usuarios, TB_Materiasn, TR_Alumnos, TR_Profesores WHERE TP_Usuarios.CodEst = '"+request.getParameter("busca")+"'"+"AND TP_Usuarios.IdUsr = TB_Materiasn.IdUser AND TB_Materiasn.IdMat = TR_Alumnos.IdMat";
   ResultSet Lista1 = SentenciasBDiamante.consultar(Dato1);
   ResultSet Lista2 = SentenciasBDiamante.consultar(Dato2);
   Lista1.last();
   Lista2.last();
   int NumFilas1 = Lista1.getRow();
   int NumFilas2 = Lista2.getRow();
   Lista1.beforeFirst();
   Lista2.beforeFirst();
   
   
   if(NumFilas1>0)
       {out.println("<table>");
   try 
        {
        
        while(Lista1.next())
         {
         String Alumno = Lista1.getString("Nombre");
         out.println("<tr>"+Alumno+"</tr>");
             while(Lista2.next())
             {
                String Clases = Lista2.getString("Clases");
                out.println("<td>"+Clases+"</td>");
             }

         }
        }
   catch(SQLException ex)
   {System.out.println("ERROR SQL"+ex);}
           finally{}
         }
   else
       {out.println("Realice una Consulta");}



%>


Cuando uso solo la consulta de arriba funciona normal pero necesito mostrar la informacion de ambas...

Este es el error que me bota, si pueden ayudarme se los agradeceria mucho porque se tienen ganas de aprender ^^

Cita:
org.apache.jasper.JasperException: Exception in JSP: /mijsp2.jsp:129

126: ResultSet Lista1 = SentenciasBDiamante.consultar(Dato1);
127: ResultSet Lista2 = SentenciasBDiamante.consultar(Dato2);
128: Lista1.last();
129: Lista2.last();
130: int NumFilas1 = Lista1.getRow();
131: int NumFilas2 = Lista2.getRow();
132: Lista1.beforeFirst();
  #2 (permalink)  
Antiguo 27/11/2010, 06:19
Avatar de LordJhony  
Fecha de Ingreso: septiembre-2010
Mensajes: 472
Antigüedad: 13 años, 8 meses
Puntos: 24
Respuesta: No entiendo el error - ayuda

Debes usar un try para esta parte tambien.
Código Java:
Ver original
  1. while(Lista2.next())
  2.              {
  3.                 String Clases = Lista2.getString("Clases");
  4.                 out.println("<td>"+Clases+"</td>");
  5.              }
Es decir te queda algo asi:
Código Java:
Ver original
  1. try{
  2.  while(Lista2.next())
  3.              {
  4.                 String Clases = Lista2.getString("Clases");
  5.                 out.println("<td>"+Clases+"</td>");
  6.              }}
  7. catch(Exception e){}
  8. //Todas las excepciones que se requieren
  #3 (permalink)  
Antiguo 27/11/2010, 07:47
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: No entiendo el error - ayuda

pero el try que tengo ya cubre todo...
como dices quedaria un try dentro de otro.


pd: igual lo intente pero el error sigue saliendo en lista2.last();
  #4 (permalink)  
Antiguo 27/11/2010, 08:06
Avatar de LordJhony  
Fecha de Ingreso: septiembre-2010
Mensajes: 472
Antigüedad: 13 años, 8 meses
Puntos: 24
Respuesta: No entiendo el error - ayuda

Cita:
Iniciado por sathory Ver Mensaje
pero el try que tengo ya cubre todo...
como dices quedaria un try dentro de otro.
Cada vez que haces una consulta a la base de datos se necesita un try para tratarla y si esto implica que quede un try dentro de otro pues no importa.
Otra cosa hasle seguimiento a la variable que te saca error desde que la inicialices a ver en donde empieza a producirse la excepcion
  #5 (permalink)  
Antiguo 27/11/2010, 12:06
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: No entiendo el error - ayuda

Lo que dice LordJhony es erróneo, añadir ese segundo try ni es necesario ni sirve para nada.

Aún así tu try/catch está mal, estás dejando fuera la parte donde haces la conexión y la consulta a la base de datos. Esos métodos también te pueden provocar SQLException, y aparentemente no los estás recogiendo, aunque como los tienes encapsulados en SentenciasBDiamante no sé si realmente los tratas.

El caso, tu error me da la impresión que puede ser porque
Cita:
SentenciasBDiamante.consultar(Dato2);
seguramente esté devolviendo un null.

Necesitas trabajar bastante el tratamiento de errores, estás muy verde. El hecho de que la información del error se reduzca a

Cita:
org.apache.jasper.JasperException: Exception in JSP: /mijsp2.jsp:129
es una muestra de ello.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #6 (permalink)  
Antiguo 27/11/2010, 20:27
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: No entiendo el error - ayuda

MUCHAS GRACIAS

el error si esta en la forma en que estoy consultando en BD...

estoy probando paso a paso, hasta que la consulta se haga compleja y me de el resultado q necesito ^^
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:02.