The idea is that you should rethrow it. I do all of this in one central class. All of my service classes have the sqlSession instance injected into them with Guice. I don't commit/rollback or deal with exceptions. I just get my mappers, do my work, and let the container take care of the rest.
Clinton try { // insert, update or delete session.commit(); } catch (IbatisException e) { log.warn(e.getMessage()); throw e; } finally { session.close(); } 2010/1/12 [e2n] software | Björn Raupach <raup...@e2n.de> > try { > // insert, update or delete > session.commit(); > } catch (IbatisException e) { > log.warn(e.getMessage()); > } finally { > session.close(); > } > > Now I catch a unchecked exception. I don't know. Feels awkward. > > > > Subject: Re: Logging in iBatis 3 (12-Jan-2010 16:30) > From: Clinton Begin <clinton.be...@gmail.com> > To: raup...@e2n.de > > > The SqlException is always within the thrown exception as a chained > exception. > > Clinton > > > 2010/1/12 [e2n] software | Björn Raupach <raup...@e2n.de> > > Hello, > > short Question: How is logging configured in iBatis 3? > > In iBatis2 we used to caught the SQLException, logged it and threw a > RuntimeException. > > However in iBatis3 there are no checked execptions anymore. > > We are using log4j. In log4j.properties we tried: > > log4j.logger.org.apache.ibatis=DEBUG > log4j.logger.java.sql=DEBUG > > The sql statement logging is nice, but how to record if something goes > wrong? Lets say an insert fails because of a constraint? There is some nice > output in my unit tests, but I havent't figured out how retrieve the SQL > Exection to log the in the application log. > > Thanks in advance! >