🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #17079

Re: Uso de Excepciones y conexion a la red

#17079
From: Juan Gonzalo de Silva Medina
Date: Mon, 04 Dec 2000 00:00
84 lines
2924 bytes

txintxe@mixmail.com wrote:

> Hola a todos
> En esto de java me defiendo pero sucede que esto de las excepciones no
> lo controlo del todo bien.
> Cuento el problema de forma sencilla
> Tengo una lista de URL y con InetAddress me conecto y me da su ip y
> nombre.
> Cuando la Url existe no hay problema, pero cuando no Mme aparece un
> mensaje del tipo"Unknow Malformded....", Pues bien mi idea es que si
> capturo este error y en ved de ese mensaje tme aparece "conexion
> fallida" tengo medio programa resuelto, el caso es que no se que
> excepciion utilizar y tampoco se crear un para tal caso, Una ayudita no
> me vendria mal.
> 
> Gracias por vuestra ayuda
> 
> 


Da la impresi�n de que en principio no te parece interesante saber que 
ha ocurrido, lo digo por que dices que con devolver "conexi�n fallida" 
tienes bastante, sin necesidad de darle m�s vueltas. As� que con que 
captures Exception es suficiente:

try{

	... aqui haces lo de la URL ...
	
}catch(Exception e){
	throw new Exception("conexi�n fallida.");
}

Si lo que quieres es implementar tus propias excepciones necesitas crear 
una clase (tu escepci�n) derivada de Exception o de RuntimeException o 
de cualquier otra que tu decidas yo te recomiendo de Exception. Puedes 
ampliarla para que contenga lo que tu quieres, por ejemplo:

public class ConexionFallidaException extends Exception{
	public String msgOrigina = "";
	ConexionFallidaException(String msg, String datos){
		super(msg);
		msgOrigina= datos;
	}
}

En tu clase haces:


public void conectar(String url) throw ConexionFallidaException{

try{

... lo que sea ...	
		
}catch(Exception e){
	 throw new ConexionFallidaException("conexi�n fallida", e.getmessage());
}

}

En el programa que use tu clase haces

try{
}catch(ConexionFallidaException ex){
		System.out.println("error->"+ex.getmessage());
		System.out.priintln("error original->"+ex.msgOrigina);
}



Por supuesto, esta estructura de error no tiene demasiado sentido, si 
solo vas ha pasar la cadena "conexi�n fallida", pero te lo pongo para 
que veas un ejemplo...


Saludos,


--
Juan Gonzalo de Silva Medina
if(!Linux) throw new Exception(" :( ");
Technical Details
Message-ID: <3A2BE759.4090305@caymasa.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <90g1dn$ok2$1@nnrp1.deja.com>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 1116f3,3f8b3911634b7e11
X-Google-Attributes: gid1116f3,public
From: Juan Gonzalo de Silva Medina <gonzalo@caymasa.es>
Subject: Re: Uso de Excepciones y conexion a la red
Date: 2000/12/04
Message-ID: <3A2BE759.4090305@caymasa.es>
X-Deja-AN: 701044870
Content-Transfer-Encoding: 8bit
References: <90g1dn$ok2$1@nnrp1.deja.com>
X-Accept-Language: es, en
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Organization: Telefonica Transmision de Datos
Mime-Version: 1.0
User-Agent: Mozilla/5.0 (X11; U; Linux 2.2.14-5.0 i686; en-US; m18) Gecko/20001107 Netscape6/6.0
Newsgroups: es.comp.lenguajes.java