Exceções com JavaBean

2 respostas
F

A linha 7 causa uma exceção proposital, pois o construtor default de “br.com.teste.Aluno” tenta estabelecer uma conexão com um BD que ainda nao está rodando.

Gostaria que o erro fosse desviado para a página “erro.jsp”, mas infelizmente isso nao ocorre.

1 <%@ page errorPage=erro.jsp%>

2 <HTML>

3 <HEAD>

4    <TITLE></TITLE>

5 </HEAD>

6 <BODY>

7 <jsp:useBean id=“a” class=“br.com.teste.Aluno” />

8 (…)

No entanto, se a exceção nao for provocada pelo JavaBean, mas sim na própria JSP, a exceção é desviada normalmente para “erro.jsp”, exemplo:

<%@ page errorPage=erro.jsp %>

<HTML>

<HEAD>

<TITLE></TITLE>

</HEAD>

<BODY>

<% int x = 5; %>

Divisao por zero levanta um erro <%= 25 / (x-5) %>

</BODY>
</HTML>

Classe Aluno:

package br.com.teste;
import java.sql.*;

public class Aluno {

private String nome;

private String matricula;

private static Connection con;
public Aluno() throws ClassNotFoundException, SQLException{
  nome = "";
  matricula = "";

  if (con == null){ 
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

        // EXCEÇÃO!! DB INDISPONÍVEL !!!
        con = DriverManager.getConnection ("jdbc:odbc:senac", "sysdba", "senha");

  }
}

}

2 Respostas

pcalcado

Olá,

1 - Coloque a página de erro no seu web.xml
2 - Não coloque código Java em Páginas JSP, utilize apenas tags e JSTL e apenas para pegar dados em request ou session, formatá-los e exibir

F

Olá!!
Na verdade nao estou usando o arquivo web.xml e nem sei como configurá-lo direito. Alguém tem algum exemplo ( se nao for nenhum abuso)

Criado 3 de agosto de 2005
Ultima resposta 3 de ago. de 2005
Respostas 2
Participantes 2