Programación General > JSP/Servlets
Error Con Combos Dependientes En Jsp
(1/1)
LordJhony:
Hola....
Tengo el siguiente codigo Jsp.
--- Código: Text ---<script type="text/javascript">var peticion = false;var testPasado = false;try{ peticion = new XMLHttpRequest(); } catch (trymicrosoft) { try { peticion = new ActiveXObject("Msxml2.XMLHTTP"); } catch (othermicrosoft) { try { peticion = new ActiveXObject("Microsoft.XMLHTTP"); } catch (failed) { peticion = false; } }} if (!peticion)alert("ERROR AL INICIALIZAR!"); function cargarCombo (url, comboAnterior, element_id){ //Obtenemos el contenido del div //donde se cargaran los resultados var element = document.getElementById(element_id); //Obtenemos el valor seleccionado del combo anterior var valordepende = document.getElementById(comboAnterior) var x = valordepende.value //construimos la url definitiva //pasando como parametro el valor seleccionado var fragment_url = url+'?Id_Facultad='+ x ; //abrimos la url peticion.open("GET", fragment_url); peticion.onreadystatechange = function() { if (peticion.readyState == 4) { //escribimos la respuesta element.innerHTML = peticion.responseText; } } peticion.send(null);}</script><select name="facultad" onchange="javascript:cargarCombo('prueba.jsp', 'facultad', 'div_prueba')" id="facultad"> <option></option> <% if (!admin.isClosed()) { ingreso = admin.createStatement(); valida = ingreso.executeQuery("select Id_Facultad, Nombre from simulador_ecaes.facultad" ); System.out.println(valida); while (valida.next()) { String idfac=valida.getString("Id_Facultad"); String nomfac=valida.getString("Nombre"); out.println("<option value='"+idfac+"'>"+idfac+","+nomfac+"</option>"); } admin.close(); } else out.println("fallo"); %> </select><div name="div_prueba"></div>
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 ---<body><%String idfac = request.getParameter("Id_Facultad").toString();%> <select name="programa" id="programa" class="select"><option></option><% Connection admin=null; Statement ingreso=null; ResultSet valida=null; String conexion="jdbc:mysql://localhost/simulador_ecaes"; try { String q =("select * from simulador_ecaes.programa where Id_Facultad = '" + idfac+ "'"); valida = ingreso.executeQuery(q); while (valida.next()) { String idpro=valida.getString("Id_Programa"); String nompro=valida.getString("Nombre"); out.println("<option value='"+idpro+"'>"+idpro+","+nompro+"</option>"); } } catch (Exception e) { e.printStackTrace(); } valida.close(); ingreso.close();%></select>
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
--- Fin de la cita ---
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 ---var fragment_url = url+'?Id_Facultad='+ x ;
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:
Hola, este error es muy genérico. Si te fijas en el log ayuda más.
LordJhony:
Gracias...
Ya He Solucionado El Problema
Era Sencillo Ademas... No Habia
Inicializado La Variable Stament
Ni La Variable Resulset
Navegación
Ir a la versión completa