Exceptions

2 respostas
alf_f2

Ola pessoal, estou quase fikando maluko, por isso peço ajuda aos colegas do fórum. Estou fazendo um teste e no método que me dá Conexao com o BD estou lançando propositadamente uma Exception.

No metodo que chamo getConnection ele não está caindo no catch, mas eu tenho certeza q getConnection lança Exception (estou forçando isso). Por favor me ajudem, estou fikando maluko com isso, Assumo q sou um iniciante em Java e é muito provavel que minha pergunta pareça boba, mas por favor me ajudem. :roll:

public static synchronized Connection getConnection(String pstrCon,String pstrUsuario,String pstrSenha)throws Exception {
	
	 Connection conn = null;
		   
		try {
		Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
		      		 
		      		 
		DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
		conn = (OracleConnection) 
		DriverManager.getConnection(pstrCon, pstrUsuario, pstrSenha);      	    
		      	
//ini-log
      BoAttmFunctions.logar("c:\SecretariaFazenda\CuidadoGETCONN"+System.currentTimeMillis()+".txt","Cuidado Exception proposital");
//fim-log
      throw new Exception ("proposital");  

		}catch(Exception e) {
			conn = null;
//ini-log
  BoAttmFunctions.logar("c:\SecretariaFazenda\ExceptionEmConsUSUCatch.txt","Caiu no catch de BdFuncException:"+e.getMessage()+"*fim");
//	fim-log
try
		{		
			
	      conn = BoBDFunctions.getConnection(strCon,strUsuario,strSenha);
		}catch(Exception e) {
			oVo.setOutErro("Erro ao Conectar com o Banco de Dados" );
			oVo.setOutStatus(-900);	
//ini-log
	      BoAttmFunctions.logar("c:\SecretariaFazenda\ExceptionEmConsUSU.txt","Exception:"+e.getMessage()+"*fim");
//	fim-log
			
		}

2 Respostas

alf_f2

foi mal pessoal não coloquei o metodo inteiro:

public static synchronized Connection getConnection(String pstrCon,String pstrUsuario,String pstrSenha)throws Exception {
	
	 Connection conn = null;
		   
		try {
		Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
		      		 
		      		 
		DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
		conn = (OracleConnection) 
		DriverManager.getConnection(pstrCon, pstrUsuario, pstrSenha);      	    
		      	
//ini-log
      BoAttmFunctions.logar("c:\SecretariaFazenda\CuidadoGETCONN"+System.currentTimeMillis()+".txt","Cuidado Exception proposital");
//fim-log
      throw new Exception ("proposital");  

		}catch(Exception e) {
			conn = null;
//ini-log
  BoAttmFunctions.logar("c:\SecretariaFazenda\ExceptionEmConsUSUCatch.txt","Caiu no catch de BdFuncException:"+e.getMessage()+"*fim");
//	fim-log
			
			
			throw new Exception ("<br>" + "Exception:"+e.getMessage());
			
		}finally {
			return conn;
		}
 
 }//end metodo
alf_f2

Fiz ate uma classe de teste semelhante e naum deu imprimiu erro:

/**
 * 
 */
package com.attachmate.model.bo;

/**
 * @author Administrator
 *
 */
public class TesteAlfredo {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		 TesteAlfredo x = new TesteAlfredo();
	 try {
		 int intN = x.t();
		 System.out.println("numero:"+intN);
	 }catch(Exception e) {
		 System.out.println("|"+e.getMessage()+"|");
	 }
		
	}

	public static int t() throws Exception{
		try {
		  throw new Exception ("DEU ERRO!");
		}catch(Exception e) {
			  throw new Exception ("zzz"+e.getMessage() +"zzz");
		}finally {
			System.out.println("finally");
			return 5;
		}
	}
	
}

saida :
finally
numero:5

Criado 27 de outubro de 2006
Ultima resposta 27 de out. de 2006
Respostas 2
Participantes 1