ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brice Ruth <bdr...@gmail.com>
Subject Re: Duplicate Key in Db
Date Wed, 23 Feb 2005 20:32:25 GMT
I think you need to catch a DaoException, and check its cause. If its
cause is a NestedSqlException, you'll need to interrogate that to
determine what the "real" cause was. In your case, it appears a
generic exception is thrown by the JDBC driver
(com.borland.datastore.driver.SqlState), with a "Runtime Error" -
you'll probably need to parse for "Duplicate key" to determine if
that's what's being thrown.

I've had to do something similar ... it certainly isn't elegant, at
least not the way I did it! Maybe someone else has a better
suggestion.


On Wed, 23 Feb 2005 20:23:23 +0000, Tim Christopher
<tim.christopher@gmail.com> wrote:
> >> You can do that now.  Maybe I'm missing something?
> >> The Ibatis insert() statement throws a SQLException.. ..
> 
> Below is the first part of stack dump that is triggers by the failed
> insertion, so should I be catching a DaoException or
> NestedSQLException?...  Or is there anything else I can do?
> 
> >>>>>>
> StandardWrapperValve[action]: Servlet.service() for servlet action
> threw exception
> com.ibatis.dao.client.DaoException: Failed to update - id
> [insertModule] - parameterObject [com.socs.dto.Module@b9b8d0].  Cause:
> com.ibatis.common.jdbc.exception.NestedSQLException:
> --- The error occurred in com/socs/persistence/sqlmapdao/sql/Module.xml.
> --- The error occurred while applying a parameter map.
> --- Check the insertModule-InlineParameterMap.
> --- Check the statement (update failed).
> --- Cause: com.borland.datastore.driver.SqlState: Runtime Error: [line
> 1, col 6] Duplicate key value for $UNIQUE$1 sort order in "MODULE".
> Caused by: com.borland.datastore.driver.SqlState: Runtime Error: [line
> 1, col 6] Duplicate key value for $UNIQUE$1 sort order in "MODULE".
> <<<<<<
> 
> Tim Christopher
>

Mime
View raw message