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

capturar error

Estas en el tema de capturar error en el foro de Java en Foros del Web. Hola a todos, estoy en un metodo del servlet y no logro que me salga lo siguiente, el usuario ingresa ´por pantalla un nro de ...
  #1 (permalink)  
Antiguo 09/12/2014, 22:29
 
Fecha de Ingreso: diciembre-2014
Mensajes: 1
Antigüedad: 9 años, 4 meses
Puntos: 0
capturar error

Hola a todos,
estoy en un metodo del servlet y no logro que me salga lo siguiente, el usuario ingresa ´por pantalla un nro de cliente, para busccarlo en la base uso la función buscar cliente si lo encuentra levanto un jsp y si no existe otro.. Mi problema es que cuando el cliente no existe me tira una exc y no me llama a mi jsp de alta de cliente.

estoy usando RMI
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

request.setAttribute("Descripcion", "Opcion 1");
String desc = request.getParameter("BuscarCliente");
System.out.println(desc);


// Busco el cliente para ver si existe.
int codCliente = Integer.parseInt(desc); //Convierto el string en entero

// InterfaceEnvio referenciaRemota = null;
String url = null;

ClienteDTO clienteD = null;


System.out.println("Leer Cliente");
try {
clienteD = Delegate.getInstancia().conexionRemota().leerClien te(codCliente);


} catch (CommunicationException e ) {

//catch (NumberFormatException ex) {
// TODO Auto-generated catch block
e.printStackTrace();

}

if (clienteD != null) {


request.setAttribute("nombreCliente", clienteD.getApellido());
request.setAttribute("dniCliente", clienteD.getDNI());
request.setAttribute("dirCliente", clienteD.getDireccion());

String codigo = String.valueOf(clienteD.getId_cliente());
request.setAttribute("id_cliente", codigo );
}


///////////// Verificar la forma de hacer esto. chequear por nulos.
//if (clienteD.equals(null)) {
// url = "/WEB-INF/AltaCliente.jsp";
//} else {
url = "/WEB-INF/DatosCliente.jsp";
//}
//El cliente Existe
//RequestDispatcher rd = request.getRequestDispatcher("/WEB-INF/DatosCliente.jsp");
RequestDispatcher rd = request.getRequestDispatcher(url);

//El cliente no existe
//RequestDispatcher rd = request.getRequestDispatcher("/WEB-INF/AltaCliente.jsp");
rd.forward(request, response);

}
  #2 (permalink)  
Antiguo 10/12/2014, 02:45
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: capturar error

Cuando aparece una excepción, esta misma te indica cuál es el problema y normalmente dónde. Siempre léelas y cuando pidas ayuda muéstrala.

No me he parado a leer tu código, pero hay algo que me ha saltado a la vista

(clienteD.equals(null)

Las cadenas/objetos se comparan con equals y no con ==, pero para comparar si es null sí hay que usar ==null. Imagina que clienteD es null, por serlo no existe el objeto y por tanto ningún método que puedas usar, en caso de null tendrás un NullPointerException.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: servlet
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 22:02.