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

excepcion org.apache.jasper.JasperException

Estas en el tema de excepcion org.apache.jasper.JasperException en el foro de Java en Foros del Web. no se que es lo que hago mal , pero me da esta excepcion al llamar al jsp, que significa???el codigo de error completo es: ...
  #1 (permalink)  
Antiguo 10/07/2006, 10:30
 
Fecha de Ingreso: junio-2006
Mensajes: 55
Antigüedad: 17 años, 10 meses
Puntos: 0
excepcion org.apache.jasper.JasperException

no se que es lo que hago mal , pero me da esta excepcion al llamar al jsp,
que significa???el codigo de error completo es:

type Informe de Excepción

mensaje

descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.

excepción

org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)


causa raíz

java.lang.NullPointerException
conexionbd.ConexionBD.ejecutaConsulta(ConexionBD.j ava:52)
basesdatos.ArticuloBD.ConsultarArticulo(ArticuloBD .java:22)
org.apache.jsp.principal_jsp._jspService(principal _jsp.java:80)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)


nota La traza completa de la causa de este error se encuentra en los archivos de diario de Apache Tomcat/5.0.28.
  #2 (permalink)  
Antiguo 10/07/2006, 13:54
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Mira la linea 52 de la clase "conexionbd.ConexionBD", ahí estará el problema (una NullPointerException). Lo dice el mensaje de error.
  #3 (permalink)  
Antiguo 10/07/2006, 17:54
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
Cita:
Iniciado por nenuka
java.lang.NullPointerException
conexionbd.ConexionBD.ejecutaConsulta(ConexionBD.j ava:52)
basesdatos.ArticuloBD.ConsultarArticulo(ArticuloBD .java:22)
org.apache.jsp.principal_jsp._jspService(principal _jsp.java:80)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
justo aqui es donde te dice donde ocurrio el problema! este es el mensaje java.lang.NullPointerException, ocurre cuando intentas usar algun objeto no instanciado, es decir, cuando el objeto no existe en memoria.

have funnnnn
  #4 (permalink)  
Antiguo 11/07/2006, 02:22
 
Fecha de Ingreso: junio-2006
Mensajes: 55
Antigüedad: 17 años, 10 meses
Puntos: 0
no se que es lo que hago mal

Muchas gracias, pero sigo sin saber cual es el problema.Mi codigo es:

public class ConexionBD {

public Connection conexion = null;
public Statement sentencia = null;
public ResultSet rs = null;


/** Creates a new instance of ConexionBD */
public ConexionBD() {
super();
}



public void EstablecerConexion(){
try {

// 1.1.- Intenta cargar el controlador JDBC correspondiente
// (en este caso el controlador JDBC de mySQL).
Class.forName("org.gjt.mm.mysql.Driver");

// 1.2.- Establece la conexión con la base de datos
// (la base de datos es "proyecto"
// y el SGBD escucha en el puerto 3306).
conexion = DriverManager.getConnection(
"jdbc:mysql://localhost/referencias");
conexion.setAutoCommit(false);

// 2.- Se crea el objeto Statement para realizar la petición.
sentencia = conexion.createStatement();

}

catch (ClassNotFoundException e) {
System.out.println("Controlador JDBC no encontrado: " + e);}

catch (SQLException e) {
System.out.println("Excepcion capturada de SQL: " + e);}
}

public ResultSet ejecutaConsulta(String pQuery)
{
//ResultSet miRes=null;
try {

// 3.- Se realiza la petición y se recoge el resultado.
//ESTA ES LA LINEA DONDE DA EL ERROR!!!!!!!!!!!!!!
rs=sentencia.executeQuery(pQuery);
return rs;

}

catch (SQLException e) {
System.out.println("Excepcion capturada de SQL: " + e);}

return rs;

}
  #5 (permalink)  
Antiguo 11/07/2006, 11:48
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
antes de usar ejecutaConsulta, necesitas ejecutar EstablecerConexion, es por eso que te esta mandando el NullPointerException, por que sentencia aun no esta instanciado!

have funnnnnn
  #6 (permalink)  
Antiguo 12/07/2006, 01:53
 
Fecha de Ingreso: junio-2006
Mensajes: 55
Antigüedad: 17 años, 10 meses
Puntos: 0
no entiendo!!!

a que te refieres con que sentencia aun no esta instanciado?en establecerconexion ya tengo sentencia = conexion.createStatement();
no lo estoy inicializando ahi ya?
m estoy volviendo loca cn esto
  #7 (permalink)  
Antiguo 12/07/2006, 10:45
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
Cita:
Iniciado por nenuka
m estoy volviendo loca cn esto
tranquila tranquila, no hay nada que no tenga solucion.....

Cita:
Iniciado por nenuka
a que te refieres con que sentencia aun no esta instanciado?
me refiero a que no existe en memoria, a que el "apuntador" sentencia no apunta a ninguna direccion de memoria todavia.

Cita:
Iniciado por nenuka
en establecerconexion ya tengo sentencia = conexion.createStatement();
no lo estoy inicializando ahi ya?
asi es, ahi la instancias, peroooooo en donde estas llamando a establecerconexion?? tienes que invocarla para que entonces sentencia se pueda instanciar.....

por lo que veo, en ArticuloBD.ConsultarArticulo(), deberias tener algo asi:

Código:
ConexionBD cdb = new ConexionBD();
cdb. EstablecerConexion();
ResultSet rs = cdb. ejecutaConsulta("select * from algo");
while(rs.next()){
  //haces lo que quieras
}
rs.close();
cdb.sentencia.close();
cdb.conexion.close();
algo asi es como deberias tenerlo, por cierto, de la forma como lo tienes no es muy orientado a objetos que digamos.....

have funnnnnn
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 01:08.