Article View: es.comp.lenguajes.java
Article #17079Re: Uso de Excepciones y conexion a la red
From: Juan Gonzalo de Silva Medina
Date: Mon, 04 Dec 2000 00:00
Date: Mon, 04 Dec 2000 00:00
84 lines
2924 bytes
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-mailReferences:
<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