myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Simon Kitching (JIRA)" <...@myfaces.apache.org>
Subject [jira] Resolved: (MYFACES-1802) FacesException and nested exceptions
Date Sun, 13 Jan 2008 10:13:34 GMT

     [ https://issues.apache.org/jira/browse/MYFACES-1802?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Simon Kitching resolved MYFACES-1802.
-------------------------------------

       Resolution: Fixed
    Fix Version/s:  1.1.6-SNAPSHOT

Ok, fixed. However I have not extensively tested it, as this requires triggering an exception
to really try it out.

It wasn't such a big patch as I first thought; as Bernhard noted most of those getCause()
calls were actually to FacesException or subclasses of it. In the end only two classes needed
to be fixed.

Bernhard, regarding just checking java.version, I presume you mean:
   if (java.version is  1.4 or later)
     return ex.getCause();
  else
    return null;

This relies on the jvm not trying to resolve the linkage for a method call until the call
is actually invoked. This does seem to be the way that Sun's jvm works but I've never seen
anything in the java specifications that say that this is actually required, so I'd rather
use reflection.

> FacesException and nested exceptions
> ------------------------------------
>
>                 Key: MYFACES-1802
>                 URL: https://issues.apache.org/jira/browse/MYFACES-1802
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: JSR-127
>    Affects Versions: 1.1.5
>            Reporter: Bernhard Huemer
>             Fix For:  1.1.6-SNAPSHOT
>
>         Attachments: MyFaces-1802.patch
>
>
> The JSF 1.1 specification requires any implementation to support Java 1.3 and that's
why the FacesException isn't allowed to utilize builtin exception chaining mechanisms (i.e.
initCause(), etc..) as they have been introduced in Java 1.4. However, the FacesException
retains it's cause by delegating to the parent's constructor (for example, "super(cause);"
or "super(message, cause);"). 
> Although this bug is rather easy to fix, I've assigned the priority level 'Major' as
it breaks the specification.

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


Mime
View raw message