Existe uma série de erros
que acontecem contra a vontade dos programadores. São
os chamados erros de tempo de execução (Runtime
Errors). Embora muitos destes erros possam ser previstos
e tratados em tempo de desenvolvimento, alguns são realmente
inesperados e podem provocar insônia em muitos iniciantes
em programação.
A linguagem JSP fornece uma forma bem fácil de fornecer
uma página de erros para as suas aplicações.
Esta página poderá exibir uma informação
ao visitante da página ou até mesmo enviar um
e-mail para o desenvolvedor informando-o do problema.
Uma página de erro é definida na página
atual usando-se o atributo errorPage nas diretivas
de página. Assim, se um erro de execução
ocorrer, o navegador é automaticamente redirecionado
para a página de erro. Vamos ver como isso acontece?
Comece escrevendo as paginas JSP listadas a seguir:
Código para provoca_erro.jsp:
<%@ page language="java"
errorPage="erro.jsp" %>
<html>
<head>
<title>Usando uma página de erros</title>
</head>
<body>
<%
int res = 40 / 0; // vai dar erro: divisão
por zero
%>
</body>
</html>
Veja que a página de erro é definida logo no topo
da página, ou seja, na linha: <%@
page language="java" errorPage="erro.jsp"
%>
O erro proposital nesta página é provocado em
um trecho de código de um Scriptlet. Aqui tentamos efetuar
uma divisão por zero, que é um erro de tempo de
execução. Erros de compilação são
apanhados pelo container antes mesmo de a página JSP
ser transformada em um Servlet, portanto, não há
necessidade de páginas de erros quando nenhum erro de
execução poderá jamais aparecer. Vamos
à página responsável pela mensagem de erro:
Código para erro.jsp:
<%@ page language="java"
%>
<html>
<head>
<title>Um erro ocorreu</title>
</head>
<body>
<p>Houve um erro ao tentar acessar a página anterior</p>
</body>
</html>
Veja que está página é bem simples. Nem
precisava ser JSP. Execute a página provoca_erro.jsp
e veja o resultado. |