De Antemano Muchas Gracias Al Que Me pueda Colaborar, Comento Que Estoy Realizando Un Proyecto Para Simular Un Examen De Estado.
Primero Empiezo Por Decir Que El Proyecto Se Esta Realizando En Netbeans IDE 6.7.1, Trabaja Con Base De Datos MySql Y El Seridor De Paginas Web Que Utilizamos Es El Tomcat6.
El Proyecto Tiene 2 Archivos JSP Y Un Servlet.
El Primer Archivo JSP Es El Index Y Tiene El Siguiente Codigo
<html>
<head>
<title>Bienvenida</title>
</head>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
<h1 align="center" style="font-size:72pt; background-color:rgb(70,125,249);"><b><i><font face="Tahoma"><span style="font-size:72pt;">SimulationEcaes</span></font></i></b></h1>
<p align="center"> </p>
<p style="background-color:rgb(70,125,249); border-width:1; border-style:none;" align="center"><b><font face="Arial"><span style="font-size:28pt;">Ingreso </span></font></b></p>
<form action="http://localhost:8080/Simulation_Ecaes/Ingreso_Administrador.jsp" method="POST">
<p align="center" style="border-width:1; border-style:none;"><input
type="submit" name="B1" value="Administrador" style="background-color:silver;">
</form><form action="Ingreso_Estudiante" method="post">
</p>
<p align="center">
<input type="submit" name="B2" value="Estudiante" style="background-color:silver;" />
</p>
</form>
<p style="border-width:1; border-style:none;"> </p>
<p style="border-width:1; border-style:none;"> </p>
<p style="border-width:1; border-style:none;"> </p>
<h1 align="center" style="font-size:48pt; background-color:rgb(70,125,249);"><font face="Tahoma"><span style="font-size:48pt;">Bienvenidos Al Simulador</span></font></h1>
</body>
</html>
El Siguiente Archivo JSP Se Llama Ingreso_Administrador.jsp Que Es Al Que La Pagina Index Que Hace Referencia Con El Boton Administrador.
<html>
<head>
<title>Ingreso Administrador</title>
</head>
<body bgcolor='white' text='black' link='blue' vlink='purple' alink='red'>
<h1 align='center' style='font-size:72pt; background-color:rgb(70,125,249);'><b><i><font face='Tahoma'><span style='font-size:72pt;'>SimulationEcaes</span></font></i></b></h1>
<p align='center'><font face='Tahoma'><span style='font-size:28pt;'><b>Administrador</b></span></font></p>
<p align='center'> </p>
<form action="http://localhost:8080/Simulation_Ecaes/Principal_Admin" method="post">
<p align='center'><font face='Arial'><span style='font-size:20pt;'>Cedula </span></font><input type='text' name='Cedula'></p>
<p align='center'><font face='Arial'><span style='font-size:20pt;'>Clave </span></font><input type='text' name='Clave'></p>
<p align='center'> </p>
<p align='center'> </p>
<p align='center'><input type='submit' name='B3' value='Ingresar' style='background-color:silver;'> &n bsp; &nbs p;
</p>
</form>
<p> </p>
</body>
</html>
Hasta Aca Todo Muy Bien. El Problema Se Presenta Cuando Se Ingresan Los Datos Y Se Da Clic Al Boton Ingresar El Cual Es El Que Hace Referencia Al Siguiente Servlet.
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletConfig;
import java.sql.*;
/**
*
* @author Family
*/
public class Principal_Admin extends HttpServlet
{
Connection admin=null;
Statement ingreso=null;
ResultSet valida=null;
String conexion="jdbc:mysql://localhost:3306/Simulador_Ecaes";
public void Init(ServletConfig con)throws ServletException
{
super.init(con);
if(admin==null || ingreso==null)
{
try
{
Class.forName("com.mysql.jdbc.Driver");
admin = DriverManager.getConnection (conexion, "", "");
ingreso = admin.createStatement(ResultSet.TYPE_SCROLL_SENSIT IVE,
ResultSet.CONCUR_UPDATABLE);
}
catch(ClassNotFoundException edr)
{
System.out.println("Error Con El Driver");
System.out.println(edr.getMessage());
}
catch(SQLException edb)
{
System.out.println("Error Con La Conexion");
System.out.println(edb.getMessage());
}
}
}
public void Destroy()
{
super.destroy();
try
{
admin.close();
ingreso.close();
}
catch(SQLException e){}
}
//intente hacerse cambiando doPost por processRequest
protected void doPost(HttpServletRequest sol, HttpServletResponse resp)
throws ServletException, IOException
{
String cedula=null;
String clave=null;
String confirma=null;
cedula=(sol.getParameter("Cedula")).trim();
clave=(sol.getParameter("Contraseña")).trim();
PrintWriter pag=null;
try
{
pag=resp.getWriter();
}
catch(IOException e)
{
System.out.println("Error Con La Pagina"+ e);
}
resp.setContentType("text/html");
pag.println("<html>");
pag.println("<head>");
pag.println("<title>Administrador_Principal</title>");
pag.println("</head>");
pag.println("<body bgcolor='white' text='black' link='blue' vlink='purple' alink='red'>");
pag.println("<h1 align='center' style='font-size:72pt; background-color:rgb(70,125,249);'><b><i><font face='Tahoma'><span style='font-size:72pt;'>SimulationEcaes</span></font></i></b></h1>");
pag.println("<p align='center'><font face='Tahoma'><span style='font-size:28pt;'><b>Administrador</b></span></font></p>");
pag.println("<p align='center'> </p>");
if(!cedula.equals("") && !clave.equals(""))
{
String q="select * from administrador where Cedula= '"+cedula+"'";
//administrador podria cambiarse por valida
try
{
valida = ingreso.executeQuery(q);
if(valida.next())
{
confirma=valida.getString(2);
if(valida.equals(clave))
{
pag.println("Ingreso Correcto");
}
else
{
pag.println("Clave Incorrecta");
}
}
else
{
pag.println("Cedula Incorrecta");
}
valida.close();
}
catch(SQLException bd)
{
pag.println("Errror Base De Datos");
pag.println(""+bd.getMessage());
}
}
else
{
pag.println("Datos No INgresados");
}
pag.println("</body></html>");
pag.flush();
pag.close();
}
}
El Problema Es Que Cuando Se Le Da Clic Al Boton Ingresar En Vez De Ejecutar El Servlet Principal_Admin.java SaLe El Siguiente Error En El Navegador.
Estado HTTP 500 -
________________________________________
type Informe de Excepción
mensaje
descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.
excepción
java.lang.NullPointerException
Principal_Admin.doPost(Principal_Admin.java:67)
javax.servlet.http.HttpServlet.service(HttpServlet .java:637)
javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
nota La traza completa de la causa de este error se encuentra en los archivos de diario de Apache Tomcat/6.0.29.
________________________________________
Apache Tomcat/6.0.29
Por Favor Enviarme O Explicarme Que Error Estoy Cometiendo, Y Como Podria Solucionar Este Problema. De Antemano mUchas Gracias
Por Cierto El Boton Estudiante No Funciona Porque No Hay Ninguna Pagina O Servlet Relacionado A El De Momento.