Uploaded image for project: 'MyFaces Core'
  1. MyFaces Core
  2. MYFACES-3053 Improve error reporting and logging
  3. MYFACES-3221

Create and use structure for facelets Location and TagAttribute-aware exceptions

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Minor
    • Resolution: Later
    • None
    • None
    • General
    • None

    Description

      This can be considered as continuation of MYFACES-3202. Implements requirement "any time there is an error the user should see not just a cryptic stack trace, but the EL expression that was being evaluated - including the part of the EL expression that triggered the problem"

      Example:
      <f:actionListener type="com.foo.Bazz" /> is represented as org.apache.myfaces.view.facelets.tag.jsf.core.ValueChangeListenerHandler.LazyValueChangeListener instance. But if look in code, you see simple valueChangeListener.processValueChange(event); without try catch. If exception occurs, no facelets Location or TagAttribute context is available and therefore exception handling mechanism is not able to output info about problematic XML tag.

      Use types created as part of MYFACES-3202 (ContextAware, LocationAware .. ); create something like ExecuteTemplate and ExecuteCallback and perform all operation with proper context.

      Attachments

        1. MYFACES-3221.patch
          13 kB
          Martin Kočí
        2. MYFACES-3221-draft.patch
          11 kB
          Martin Kočí

        Activity

          People

            markoc50 Martin Kočí
            markoc50 Martin Kočí
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: