commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Graham <grahamdavid1...@yahoo.com>
Subject Re: Checked vs Runtime exceptions
Date Wed, 25 Jun 2003 15:42:13 GMT
--- Juozas Baliuka <baliuka@centras.lt> wrote:
> Ok,
> next example with  checked exception in client code:
> 
> void register(MyObject value)throws MyException{
> try{
>   Connection connection = getConnection();// Doe's it throws
> SQLException
> too ?
>  try{
>           updateOrInsert(connection,value);
>           log.info(" registred " + value.getId() );
>  }finally{
> 
>        connection.close(); // Doe's the caller better know how to handle
> SQLException wrapped as MyException ?

In many cases that a database operation fails the next layer just cares
that it gets notified of the failure and logs it (you could also have
subclasses of MyException that indicate more specific failure types). 
MyException is allowing other layers to be independent of the persistence
implementation exceptions like SQLException.

The commons-sandbox-mapper project provides this exact functionality.

David

> 
> }
> }catch(SQLException e){
>      throw new MyException(e);
> }// LoggingException is a runtime exeption in this case
> 
> }
> 
> 
> ----- Original Message -----
> From: "David Graham" <grahamdavid1980@yahoo.com>
> To: "Jakarta Commons Developers List" <commons-dev@jakarta.apache.org>
> Sent: Wednesday, June 25, 2003 4:58 PM
> Subject: Re: Checked vs Runtime exceptions
> 
> 
> > --- Ryan Hoegg <rhoegg@isisnetworks.net> wrote:
> > > This may be the "correct solution" in some of your eyes, but it is
> far
> > > too much overhead for most programmers who want to use logging.  If
> my
> > > database server is down or the logging directory can not be found
> when I
> > >
> > > want to log something, my application code is not the right place to
> > > handle that.MyMethodUsesLogging has no business handling those
> > > exceptional cases.  I think a RuntimeException is most appropriate
> here.
> > >
> >
> > Logging was merely an example (probably a poor one).  I don't want to
> > handle exceptions from my logging package but I wouldn't want it to
> throw
> > RuntimeExceptions either (unless I've misused the API).
> >
> > David
> >
> > > Juozas Baliuka wrote:
> > >
> > > > I think this logging example was a good one:
> > > >
> > > > void MyMethodUsesLogging()throws MyException{
> > > >  try{
> > > >
> > > >   log.info("started");
> > > >
> > > > }catch(LoggingException e){
> > > >
> > > >   log.error(e); // ??????????????????
> > > >
> > > >   throw new MyExeption(e);
> > > > }
> > > >
> > > >
> > > >}
> > > >
> > > >
> > >
> > >
> > >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
> > > For additional commands, e-mail: commons-dev-help@jakarta.apache.org
> > >
> >
> >
> > __________________________________
> > Do you Yahoo!?
> > SBC Yahoo! DSL - Now only $29.95 per month!
> > http://sbc.yahoo.com
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: commons-dev-help@jakarta.apache.org
> >
> 
> 
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.491 / Virus Database: 290 - Release Date: 2003.06.21
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-dev-help@jakarta.apache.org
> 


__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message