cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrus Adamchik (JIRA)" <>
Subject [jira] Created: (CAY-1165) Stop unwinding runtime exceptions
Date Fri, 09 Jan 2009 10:30:45 GMT
Stop unwinding runtime exceptions

                 Key: CAY-1165
             Project: Cayenne
          Issue Type: Improvement
          Components: Cayenne Core Library
    Affects Versions: 3.0M5
            Reporter: Andrus Adamchik
            Assignee: Andrus Adamchik
             Fix For: 3.0M6

The practice of unwinding Cayenne exceptions seemed like  a good idea at the time. This would
look like:

       try {
        catch (Exception ex) {
            throw new CayenneException("Exception", Util.unwindException(ex));

And was supposed to trim Exception chain to just the underlying cause plus a Cayenne[Runtime]Exception
wrapper. However in many cases intermediate places where Cayenne catches exception, wraps
it and rethrows, provide additional forensics info helping to identify the cause. For instance
FieldAccessor shows which field has failed:

       try {
            field.set(object, newValue);
        catch (Throwable th) {
            throw new PropertyException(
                    "Error writing field: " + field.getName(),

So I think we should get rid of all calls to Util.unwindException(..) and rethrow it unchanged.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message