Programación General > JSP/Servlets
Jdbc-servlet
nicokiki:
El NULLPointerException lo devuelve porque no habras instanciado algo pero si compila pero no anda. No entiendo q puede llegar a ser, pero si te puedo pasar un codigo, la respuesta es si, te doy un servlet q tira una consulta, ahi va:
package mcpatos;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
/**
* <p>Title: Mc Pato's</p>
* <p>Description: Delivery de Comidas Rapidas</p>
* <p>Copyright: Copyright © 2004</p>
* <p>Company: Gonzalez & Tavasci</p>
* @author Gonzalez Nicólas, Tavasci Dozo Pablo
* @version 1.0
*/
public class ServletLogueo extends ServletBase {
/** Procesa la petición del método post.
* @param request
* @param response
* @throws ServletException
* @throws IOException*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
if ((request.getParameter("AccionServidor")).equals("AccionIngresoUsuarios"))
doLogin(request, response);
if ((request.getParameter("AccionServidor")).equals("AccionCerrarSesion"))
doCloseSession(request, response);
}
/** Metodo que despacha a distintas paginas de acuerdo a si el usuario
* se encuentra registrado o no
* @param request
* @param response
* @throws ServletException
* @throws IOException*/
private void doLogin(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType(CONTENT_TYPE);
session = request.getSession(true);
session.setMaxInactiveInterval(300); //Seteamos 5 minutos de sesión por default
String Username = request.getParameter("username");
String Password = request.getParameter("password");
//Verifico el nombre de usuario y contraseña
//donde username y password son los nombres de los edit text de la
//pagina HTML de inicio
if (isRegistered(Username, Password))
{
GoToPage("/SitioMc/Consultas/Usuario.jsp", request, response);
}
else
GoToPage("/SitioMc/Errores/UsuarioNoRegistrado.html", request, response);
}
/** Metodo que verifica si el usuario ingresado esta registrado
* @param username
* @param password
* @returns true o false */
private static boolean isRegistered(String username, String password)
{
if ((username == null) || (password == null))
return false;
boolean success = false;
java.sql.Statement ibLogin = null;
java.sql.ResultSet dsLogin = null;
// Ejecuto la consulta en caso de ser posible
try
{
ibLogin = McPatosDataBase.getConnection().createStatement();
dsLogin = ibLogin.executeQuery("select Nombre, Clave, CodigoCliente, Administrador from usuarios where nombre = '" + username + "' and clave = '" + password + "'");
}
// Atrapo la excepcion correspondiente a la consulta
catch (java.sql.SQLException e)
{
System.out.println ("Error al tirar el select a Usuarios.");
showSQLException (e);
}
// Analizo los resultados de la consulta y los comparo contra los
// recibidos por parámetro
try
{
while (dsLogin.next())
{
if ( (username.equals(dsLogin.getString("Nombre")))
&& (password.equals(dsLogin.getString("Clave"))) )
{
session.setAttribute("Nombre",username);
String customerCode = dsLogin.getString("CodigoCliente");
session.setAttribute("Codigo",customerCode);
session.setAttribute("Administrador",dsLogin.getString("Administrador"));
if (dsLogin.getInt("CodigoCliente") > 0)
{
try
{
dsLogin = ibLogin.executeQuery("select Nombre from Clientes where codigo = '" + customerCode + "'");
dsLogin.next();
session.setAttribute("Nombre", dsLogin.getString("Nombre"));
success = true;
}
catch (java.sql.SQLException e)
{
System.out.println ("Error al tirar el select a Clientes.");
showSQLException (e);
}
}
else
{
session.setAttribute("Nombre", username + " - Personal del local");
success = false;
}
}
}
try { if (dsLogin!=null) dsLogin.close (); } catch (java.sql.SQLException e) { showSQLException (e); }
try { if (ibLogin!=null) ibLogin.close (); } catch (java.sql.SQLException e) { showSQLException (e); }
}
// Atrapo la excepcion correspondiente a la navegacion de los resultados
catch (java.sql.SQLException e)
{
System.out.println ("Incapaz de navegar por los resultados de la consulta dsLogin");
showSQLException (e);
}
// En caso de no existir el registro en la base de datos, el metodo
// devuelve false
return success;
}
/** Metodo que cierra la sesion y despacha al inicio del Sitio
* @param request
* @param response
* @throws ServletException
* @throws IOException*/
private void doCloseSession(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType(CONTENT_TYPE);
session.setAttribute("Carrito", null);
session = null;
GoToPage("/SitioMc/index.html", request, response);
}
}
guanuma:
:hola:
gracias por el codigo.
nicokiki:
De nada!!!!!!!!!
Pero............te sirvio o no????
Salu2!!!!!!!
Navegación
[*] Página Anterior
Ir a la versión completa