Mostrando las entradas con la etiqueta jsp. Mostrar todas las entradas
Mostrando las entradas con la etiqueta jsp. Mostrar todas las entradas

lunes, 9 de enero de 2017

Capturar ApiProxy$OverQuotaException en proyecto jsp

Saludos a todos. esta es mi primera entrada del 2017 ya después de mucho tiempo si publicar. 


Este código guía funciona para poder manejar de manera correcta el error en Google App Engine (GAE) al sobrepasar la cuota de envíos de emails, esto en una proyecto java usando jsp.

importar: com.google.apphosting.api.ApiProxy.OverQuotaException;

la excepción se captura al enviar el email:

try {
       mailService.send(msg);
}catch (OverQuotaException ex) {
       //HttpServletResponse resp"
       resp.sendRedirect("/jsp/OverQuotaException.jsp"); 
}

Esta función captura el error del servidor "ApiProxy.OverQuotaException" y maneja la excepción de manera idónea y se hace una re-dirección hacia una pagina jsp para poder avisar al usuario del problema y así no mostrar una pagina genérica de error.


sábado, 19 de diciembre de 2015

Manejo de excepciones en jsp


Primero debemos saber bien que es una excepción y su manejo y para ello aqui esta este link de wikipedia

https://es.wikipedia.org/wiki/Manejo_de_excepciones

Ahora ya que recordamos o conocemos que es una excepción procedemos  a su manejo en tiempo de ejecución en una aplicación web con jsp.

En mi caso se ha creado una excepción que controla si un usuario esta esta loggeado o no.
-----------------------------------------------------------------------------------
public class ErrorLoggeo extends Exception {
    public ErrorLoggeo(String e) {
        super(e);
    }

-----------------------------------------------------------------------------------

Ahora iremos al scriptlet que controla el jsp para manejar esa excepción:
-------------------------------------------------------------------------------------------------------------
public static queryUser(String id_usuario) throws ErrorLoggeo { 
...

if (userService.getCurrentUser() == null){
            throw new ErrorLoggeo("Usuario no registrado");
        }
...
}
--------------------------------------------------------------------------------------------------------------

Ahora en tu archivo jsp, vamos a cachar esta excepción que creamos y la redirigimos a una pagina de error la cual sirve para advertir el error  y ejecutar la acción prudente para manejarlo.
-------------------------------------------------------------------------------------------------------------------------
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>
    <%
        String id_usuario = request.getParameter("id");
        String usuario = null;
        try{
        usuario = queryUser(id_usuario);
        }catch(ErrorLoggeo e){
           String redirectURL = "/jsp/error.jsp";
           response.sendRedirect(redirectURL);
        }
    %>
    <head>
        <link rel="...
--------------------------------------------------------------------------------------------------------------------------

Con esto pasos ya solo debemos hacer las correcciones pertinentes en la pagina de error para así controlar correctamente este tipo de errores.

Hay otras formas de controlar las excepciones desde el web.xml pero ya lo pondré en otra entrada.

Por cierto Guillermo L. R. autor de este blog, les desea felices Fiestas.