• Viernes 19 de Abril de 2024, 16:17

Autor Tema:  Error Con Combos Dependientes En Jsp  (Leído 3907 veces)

LordJhony

  • Miembro activo
  • **
  • Mensajes: 70
    • Ver Perfil
Error Con Combos Dependientes En Jsp
« en: Sábado 13 de Noviembre de 2010, 12:30 »
0
Hola....
Tengo el siguiente codigo Jsp.

Código: Text
  1. <script type="text/javascript">
  2. var peticion = false;
  3. var  testPasado = false;
  4. try
  5. {
  6.         peticion = new XMLHttpRequest();
  7.     }
  8.     catch (trymicrosoft)
  9.     {
  10.     try
  11.     {
  12.         peticion = new ActiveXObject("Msxml2.XMLHTTP");
  13.     }
  14.     catch (othermicrosoft)
  15.     {
  16.         try
  17.         {
  18.             peticion = new ActiveXObject("Microsoft.XMLHTTP");
  19.         }
  20.         catch (failed)
  21.         {
  22.         peticion = false;
  23.         }
  24.     }
  25. }
  26.  
  27. if (!peticion)
  28. alert("ERROR AL INICIALIZAR!");
  29.  
  30. function cargarCombo (url, comboAnterior, element_id)
  31. {
  32.     //Obtenemos el contenido del div
  33.     //donde se cargaran los resultados
  34.     var element =  document.getElementById(element_id);
  35.     //Obtenemos el valor seleccionado del combo anterior
  36.     var valordepende = document.getElementById(comboAnterior)
  37.     var x = valordepende.value
  38.     //construimos la url definitiva
  39.     //pasando como parametro el valor seleccionado
  40.     var fragment_url = url+'?Id_Facultad='+ x ;
  41.     //abrimos la url
  42.     peticion.open("GET", fragment_url);
  43.     peticion.onreadystatechange = function()
  44.     {
  45.         if (peticion.readyState == 4)
  46.         {
  47.             //escribimos la respuesta
  48.             element.innerHTML = peticion.responseText;
  49.         }
  50.     }
  51.    peticion.send(null);
  52. }
  53. </script>
  54. <select name="facultad" onchange="javascript:cargarCombo('prueba.jsp', 'facultad', 'div_prueba')" id="facultad">
  55.  
  56.                     <option></option>
  57.                  <%
  58.                   if (!admin.isClosed())
  59.                   {
  60.                        ingreso = admin.createStatement();
  61.                        valida = ingreso.executeQuery("select Id_Facultad, Nombre from simulador_ecaes.facultad" );
  62.                        
  63.                        System.out.println(valida);
  64.                        while (valida.next())
  65.                        {
  66.                           String idfac=valida.getString("Id_Facultad");
  67.                           String nomfac=valida.getString("Nombre");
  68.                           out.println("<option value='"+idfac+"'>"+idfac+","+nomfac+"</option>");
  69.                        }
  70.                        admin.close();
  71.                    }
  72.                    else
  73.                      out.println("fallo");
  74.                   %>
  75.                     </select>
  76. <div name="div_prueba"></div>
  77.  

Este codigo es para generar dos selects que hacen consulta a la base de datos el segundo dependiendo del primero hace una llamada a prueba.jsp

Código: Text
  1. <body>
  2. <%
  3. String idfac =  request.getParameter("Id_Facultad").toString();
  4. %>
  5.  
  6.  
  7. <select name="programa"  id="programa" class="select">
  8. <option></option>
  9. <%
  10.    Connection admin=null;
  11.                   Statement ingreso=null;
  12.                   ResultSet valida=null;
  13.                   String conexion="jdbc:mysql://localhost/simulador_ecaes";
  14.     try
  15.     {
  16.         String q =("select * from simulador_ecaes.programa where Id_Facultad = '" + idfac+ "'");
  17.         valida = ingreso.executeQuery(q);
  18.         while (valida.next())
  19.                        {
  20.                           String idpro=valida.getString("Id_Programa");
  21.                           String nompro=valida.getString("Nombre");
  22.                           out.println("<option value='"+idpro+"'>"+idpro+","+nompro+"</option>");
  23.                        }
  24.     }
  25.     catch (Exception e)
  26.     {
  27.         e.printStackTrace();
  28.     }
  29.     valida.close();
  30.     ingreso.close();
  31. %>
  32. </select>
  33.  

El problema es que cuando escogo el valor del primer select me sale el siguiente error:
Citar
Programa:
HTTP Status 500 -
________________________________________
type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: java.lang.NullPointerException
root cause
java.lang.NullPointerException
note The full stack traces of the exception and its root causes are available in the GlassFish/v3 logs.
________________________________________
GlassFish/v3
Creo que el problema esta en esta linea que pienso no me esta enviando el valor estraido de la base de datos.

Código: Text
  1. var fragment_url = url+'?Id_Facultad='+ x ;
  2.  

Pero todo el codigo esta bien formulado creo....
Me pudieran decir por que motivo se me presenta el error y como podria solucionarlo... De antemano muchas gracias

arielb

  • Moderador
  • ******
  • Mensajes: 771
  • Nacionalidad: pa
    • Ver Perfil
    • http://coder-pa.blogspot.com
Re: Error Con Combos Dependientes En Jsp
« Respuesta #1 en: Jueves 18 de Noviembre de 2010, 15:32 »
0
Hola, este error es muy genérico. Si te fijas en el log ayuda más.
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16

http://coder-pa.blogspot.com

LordJhony

  • Miembro activo
  • **
  • Mensajes: 70
    • Ver Perfil
Re: Error Con Combos Dependientes En Jsp
« Respuesta #2 en: Jueves 25 de Noviembre de 2010, 13:20 »
0
Gracias...
Ya He Solucionado El Problema
Era Sencillo Ademas... No Habia
Inicializado La Variable Stament
Ni La Variable Resulset