Tapestry
  1. Tapestry
  2. TAPESTRY-2422

The Exception report will itself throw an exception if the exception being reported contains a write-only property

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 5.0.11
    • Fix Version/s: 5.0.13
    • Component/s: None
    • Labels:
      None

      Description

      when displayed exception contains at least one write-only property tapestry failing to render error page.
      java.lang.UnsupportedOperationException: Class ui.Exception_detail does not provide an accessor ('getter') method for property 'faultCode'
      at org.apache.tapestry.ioc.internal.services.PropertyAdapterImpl.get(PropertyAdapterImpl.java:81)
      at org.apache.tapestry.ioc.internal.services.ClassPropertyAdapterImpl.get(ClassPropertyAdapterImpl.java:81)
      at org.apache.tapestry.ioc.internal.services.ExceptionAnalyzerImpl.extractInfo(ExceptionAnalyzerImpl.java:105)
      at org.apache.tapestry.ioc.internal.services.ExceptionAnalyzerImpl.analyze(ExceptionAnalyzerImpl.java:50)

      it seems like error in extractInfo method, which does not analyze can it read property or not before invoking adapter.get(). So, it is simple to patch
      Instead of

      Object value = adapter.get(t, name);
      if (value == null) continue;

      Use

      PropertyAdapter pa = adapter.getPropertyAdapter(name);
      if (!pa.isRead()) continue;

      Object value = pa.get(t);
      if (value == null) continue;

        Activity

        There are no comments yet on this issue.

          People

          • Assignee:
            Howard M. Lewis Ship
            Reporter:
            Alexander Gavrilov
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 5m
              5m
              Remaining:
              Remaining Estimate - 5m
              5m
              Logged:
              Time Spent - Not Specified
              Not Specified

                Development