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

Problema con Exceptions

Estas en el tema de Problema con Exceptions en el foro de Java en Foros del Web. Buenas amigos de forosdelWeb.....tengo un problemon..... resulta que tengo un servlet que cuando se produzca una exception, debe mandarme un mensaje detallando que exception es.....el ...
  #1 (permalink)  
Antiguo 28/06/2010, 15:27
 
Fecha de Ingreso: octubre-2007
Mensajes: 191
Antigüedad: 16 años, 6 meses
Puntos: 0
Problema con Exceptions

Buenas amigos de forosdelWeb.....tengo un problemon.....

resulta que tengo un servlet que cuando se produzca una exception, debe mandarme un mensaje detallando que exception es.....el tema es que me llega vacio....este es el codigo :

Código:
      if("insertar".equals(accion))
       {
           try
           {
              UsuarioVO objUsuario=new UsuarioVO();
               objUsuario.setRut((String) request.getParameter("Rut"));
               objUsuario.setNombre((String) request.getParameter("Name"));
               objUsuario.setApPaterno((String) request.getParameter("ApPat"));
               objUsuario.setApMaterno((String) request.getParameter("ApMat"));
               objUsuario.setFechaNacimiento((String) request.getParameter("FdN"));
               objUsuario.setDireccion((String) request.getParameter("Address"));
               objUsuario.setFono((String) request.getParameter("Phone"));
               objUsuario.setEmail((String) request.getParameter("Email"));
               objNegocio.insertaUsuario(objUsuario);
               request.getSession().setAttribute("mensaje", "Usuario Insertado Correctamente.");
           }
           catch(Exception ex)
           {
               new Exception();
               request.getSession().setAttribute("mensaje","Error al insertar : "  + ex.getMessage())   ;

           }
           finally
           {
               response.sendRedirect("insertarResultado.jsp");
           }
       }

De antemano muchas gracias
  #2 (permalink)  
Antiguo 29/06/2010, 04:35
Avatar de elAntonie  
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 2 meses
Puntos: 10
Respuesta: Problema con Exceptions

Wenas

Y por que no creas un servlet de error??

web.xml
Código:
  <servlet>
    <servlet-name>servletError</servlet-name>
    <servlet-class>paquete.servletError</servlet-class>
  </servlet>
....
  <servlet-mapping>
      <servlet-name>servletError</servlet-name>
      <url-pattern>/servlet/servletError</url-pattern>
    </servlet-mapping>
...
  <error-page>
    <error-code>404</error-code>
    <location>/servlet/servletError</location>
  </error-page>
  <error-page>
    <exception-type>java.lang.Throwable</exception-type>
    <location>/servlet/servletError</location>
  </error-page>
De este modo defines un servlet, que con cualquier excepcion que salte te redirigira ahi. Y en ese servlet puedes pintar lo que te de la gana. Por ejemplo:

Código:
....
            PrintWriter out = response.getWriter();
            exception = (Throwable)request.getAttribute(PageContext.EXCEPTION);
            out.println(exception.getMessage());
...
Además de sacar datos de la sesion, mandarlo por correo, insertar en BBDD...

Saludos.
__________________
--
NO. Tu problema no es urgente.

CCFVLS
  #3 (permalink)  
Antiguo 30/06/2010, 03:39
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Problema con Exceptions

En la página a la que reenvías debes implementar un session.getAttribute("mensaje") y mostrarlo en tu jsp si no es .equals("");
  #4 (permalink)  
Antiguo 01/07/2010, 07:32
 
Fecha de Ingreso: febrero-2010
Mensajes: 128
Antigüedad: 14 años, 2 meses
Puntos: 3
Respuesta: Problema con Exceptions

de todas formas no has utilizado corectamente las excepciones

el bloque try catch es para capturar excepciones, lo que significa que si se da una, el bloque catch la procesará, pero no por eso debes lanzar una excepción en el bloque catch.

Etiquetas: jsp-servlets
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:55.