Como criar uma pagina de erro?

Pessoal como faco para criar uma pagina de erro para a minha aplicacao?
Colocando a diretiva <%@ page errorPage=“erro.jsp” %> nas minhas jsps qualquer erro q ocorrer sera direcionado para esta pagina nao é?
E erros ocasionados por servlets, por exemplo erros de conexao a db, vao ser direcionados para esta pagina tambem?

[quote=“Brito_Developer”]Pessoal como faco para criar uma pagina de erro para a minha aplicacao?
Colocando a diretiva <%@ page errorPage=“erro.jsp” %> nas minhas jsps qualquer erro q ocorrer sera direcionado para esta pagina nao é?
E erros ocasionados por servlets, por exemplo erros de conexao a db, vao ser direcionados para esta pagina tambem?[/quote]

Fala Brito…

[code]<%@ page isErrorPage="true" %>
<HTML>
<HEAD><TITLE>My Error Page</TITLE></HEAD>
<BODY>
<H2>Exception Information</H2>
<TABLE>

<tr>
<td>Exception Class:</td>
<td><%= exception.getClass() %></td>
</tr>

<tr>
<td>Message:</td>
<td><%= exception.getMessage() %></td>
</tr>

<tr>
<td>StackTrace:</td>
<td>
java.io.PrintWriter outstream = new java.io.PrintWriter(out);
exception.printStackTrace(outstream);
</td>
</tr>

</TABLE>
</BODY>
</HTML>[/code]

:wink:

Meu este codigo esta dando erro.
Mas eu tenho q prever todo tipo de exception nesta pagina?
Explique, …

[quote=“Brito_Developer”]Meu este codigo esta dando erro.
Mas eu tenho q prever todo tipo de exception nesta pagina?
Explique, …[/quote]

qual erro ?
sim… então vc exibe a class e a message…

:wink:

HTTP Status 500 -

Cara o caso é eu ate tenho uma pequena pagina de erro mas qdo eu incluo ela nao é reconhecida.

&lt;%@ page isErrorPage=&quot;true&quot; %&gt;
&lt;h1&gt;Erro Encontrado&lt;/h1&gt;
O seguinte erro foi encontrado&#58;&lt;br&gt;
&lt;b&gt;&lt;%=exception%&gt;&lt;/b&gt;&lt;br&gt;

e dai eu incluo assim:
<%@ page errorPage=“errorPage.jsp” %>

[quote=“Brito_Developer”]HTTP Status 500 -

Cara o caso é eu ate tenho uma pequena pagina de erro mas qdo eu incluo ela nao é reconhecida.

&lt;%@ page isErrorPage=&quot;true&quot; %&gt;
&lt;h1&gt;Erro Encontrado&lt;/h1&gt;
O seguinte erro foi encontrado&#58;&lt;br&gt;
&lt;b&gt;&lt;%=exception%&gt;&lt;/b&gt;&lt;br&gt;

e dai eu incluo assim:
<%@ page errorPage=“errorPage.jsp” %>[/quote]

ok. mas nos seu JSPs vc coloca a diretiva errorPage certo ?

:wink:

Sim.

<%@ page errorPage="/errorPage.jsp" %>

Pessoal me ajudem a resolver isto aqui.
Que tal um passo a passo. Sei q tem q configurar o web.xml, mas nao sei oq tem q fazer la. A parte das diretivas vamos deixar pra depois, e tambem ja entendi; Entao vamos la, …
1 - Eu quero tratar na minha “errorPage” erros de SQLException, Exception e tambem erros de jsp (acho q isto entra no exception). Agora como monto esta pagina?
2 - O que vai no web.xml?

é só tu colocar isso de no teu web.xml, por ex:

&lt;error-page&gt;
   &lt;exception-class&gt;java.lang.Exception&lt;/exception-class&gt;
   &lt;location&gt;/jsp/error.jsp&lt;/location&gt;
&lt;/error-page&gt;

fora isso tu nao precisa colocar nenhuma diretiva nos teus JSPs, a não ser q queria uma página de erro diferente pra algum…

Nao preciso colocar a diretiva
<%@ page errorPage="/errorPage.jsp" %>
nas minhas jsps?

Estes cod

&lt;error-page&gt; 
	   &lt;exception-class&gt;java.lang.Exception&lt;/exception-class&gt; 
	   &lt;location&gt;/sistema/cliente/testes/error.jsp&lt;/location&gt; 
	&lt;/error-page&gt;

el vai direcionar qualquer tipo de excption para esta pagina?

Pessoal se tiver uma ajudinha aqui eu agradeco, ainda nao resolvi isto.

[quote=“Brito_Developer”]Nao preciso colocar a diretiva
<%@ page errorPage="/errorPage.jsp" %>
nas minhas jsps?

Estes cod

&lt;error-page&gt; 
	   &lt;exception-class&gt;java.lang.Exception&lt;/exception-class&gt; 
	   &lt;location&gt;/sistema/cliente/testes/error.jsp&lt;/location&gt; 
	&lt;/error-page&gt;

el vai direcionar qualquer tipo de excption para esta pagina?[/quote]

dessa forma não…a não ser que vc queira uma página de erro independente…

como está suas diretivas e sua página de erro ?

:wink:

Bom vamos la.
Se eu colocar este cod ( java.lang.Exception) nna tag do web.xml ele vai tratar qualquer exception de jsp?
Nao sei nem como comecar isto/

[quote=“Brito_Developer”]Bom vamos la.
Se eu colocar este cod ( java.lang.Exception) nna tag do web.xml ele vai tratar qualquer exception de jsp?
Nao sei nem como comecar isto/[/quote]

sim, qualquer erro ocorrido será redirecionado para o location indicado:

&lt;location&gt;/error.jsp&lt;/location&gt;

:wink:

ta bom, entao agora veja mesu cod`s / procedimentos.

Nas jsp`s eu tenho:

&lt;%@ page errorPage=&quot;_util/errorPage.jsp&quot; %&gt;

Na minha pagina de erro (errorPage) eu tenho:

&lt;%@ page isErrorPage=&quot;true&quot; %&gt; 
&lt;h1&gt;Erro Encontrado&lt;/h1&gt; 
O seguinte erro foi encontrado&#58;&lt;br&gt; 
&lt;b&gt;&lt;%=exception%&gt;&lt;/b&gt;&lt;br&gt; 

No arquivo web.xml eu tenho a tag :

	&lt;error-page&gt; 
	   &lt;exception-class&gt;java.lang.Exception&lt;/exception-class&gt; 
	   &lt;location&gt;/_util/errorPage.jsp&lt;/location&gt; 
	&lt;/error-page&gt; 

Dai na minha pagina eu causo um erro tipo assim:

&lt;%@ page errorPage=&quot;../_util/errorPage.jsp&quot; %&gt;
&lt;html&gt;
&lt;body&gt;
&lt;%=java%&gt;
&lt;/body&gt;
&lt;/html&gt;

Estou imprimindo uma varivel “java” q nao existe, mas nao estou sendo direcionado para a minha pagina de erros.

O q acontece?

[quote=“Brito_Developer”]ta bom, entao agora veja mesu cod`s / procedimentos.

Nas jsp`s eu tenho:

&lt;%@ page errorPage=&quot;_util/errorPage.jsp&quot; %&gt;

Na minha pagina de erro (errorPage) eu tenho:

&lt;%@ page isErrorPage=&quot;true&quot; %&gt; 
&lt;h1&gt;Erro Encontrado&lt;/h1&gt; 
O seguinte erro foi encontrado&#58;&lt;br&gt; 
&lt;b&gt;&lt;%=exception%&gt;&lt;/b&gt;&lt;br&gt; 

No arquivo web.xml eu tenho a tag :

	&lt;error-page&gt; 
	   &lt;exception-class&gt;java.lang.Exception&lt;/exception-class&gt; 
	   &lt;location&gt;/_util/errorPage.jsp&lt;/location&gt; 
	&lt;/error-page&gt; 

Dai na minha pagina eu causo um erro tipo assim:

&lt;%@ page errorPage=&quot;../_util/errorPage.jsp&quot; %&gt;
&lt;html&gt;
&lt;body&gt;
&lt;%=java%&gt;
&lt;/body&gt;
&lt;/html&gt;

Estou imprimindo uma varivel “java” q nao existe, mas nao estou sendo direcionado para a minha pagina de erros.

O q acontece?[/quote]

Aí amigão, vamos botão essa budega pra funfar…

aqui tá funcionando assim:

Página de teste:

[code]<%@ page errorPage="error.jsp" %>
<html>
<body>

<H2>Throw Exception!</H2>
<% String nullString = null; %>

<!-- Ooops -->
<% nullString.length(); %>

</body>
</html>[/code]

ErrorPage:

[code]<%@page isErrorPage="true" %>

<h1>Erro Encontrado</h1>
O seguinte erro foi encontrado:
<br>
<br>
<b><%=exception%></b><br>[/code]

:wink:

Oi…
Dei uma melhorada pra vc amigão…

[code]<%@page isErrorPage="true" %>

<h1>Erro Encontrado</h1>

<b>O seguinte erro foi encontrado:</b>

<br>
<%=exception.getClass()%>
<br>
<br>

<b>O erro foi gerado no arquivo:</b>

<br>
<%=request.getAttribute("javax.servlet.error.request_uri") +"?"+request.getQueryString()%>
<br>
<br>

<b>StackTrace:</b>
<br>

<%
java.io.ByteArrayOutputStream bout = new java.io.ByteArrayOutputStream();
exception.printStackTrace(new java.io.PrintStream(bout));
String stack = bout.toString();
out.println(stack);
%>
<br>
<br><br><br>[/code]

:wink:

Opa!
Parece que estamos comecando a nos entender. Funcionou!!!
Agora tah, vamos la. Eu consigo tratar qualquer tipo de erro nesta pagina.

  • erro 404
  • SQL exception
  • Exception
  • e todo o resto
    Tem como fazer uma pagina assim? Ou tenho que fazer uma para cada tipo de erro?
    Como vcs costumam fazer?

[quote=“Brito_Developer”]Opa!
Parece que estamos comecando a nos entender. Funcionou!!!
Agora tah, vamos la. Eu consigo tratar qualquer tipo de erro nesta pagina.

  • erro 404
  • SQL exception
  • Exception
  • e todo o resto
    Tem como fazer uma pagina assim? Ou tenho que fazer uma para cada tipo de erro?
    Como vcs costumam fazer?[/quote]

eu costumo usar uma única página…

:wink:

Entao, mas é isto mesmo q eu quero
Como faco isto?
é um monte de if?