Uploaded image for project: 'Commons Lang'
  1. Commons Lang
  2. LANG-767

Keep 'cause method names' in Lang 4.0 for ServletException

    XMLWordPrintableJSON

    Details

    • Type: Task
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 4.0
    • Component/s: lang.exception.*
    • Labels:

      Description

      http://commons.apache.org/lang/article3_0.html#Deprecations says:

      The lone deprecation in 3.0 is that of the notion of 'cause method names' in ExceptionUtils. In Java 5.0 it is still just about needed to handle some JDK classes that have not been migrated to the getCause API. In Java 6.0 things appear to be resolved and we will remove the related methods in Lang 4.0.

      I see a problem with this plan: so far, javax.servlet.ServletException has not been retrofitted to make use of the getCause() API for chaining. In 2005, the Tomcat project rejected a bug requesting this, stating that it had to be changed in the spec, and nothing seems to have happened since. A bug at sun suggesting a spec change is still open as of today.

      Thus, if you remove all support for cause method names from ExceptionUtils in Lang 4.0, web application authors would be forced to either write support glue for ServletException themselves again, or keep a dependency for Lang 3.0 alongside. Both alternatives sound bad to me.

      How about removing most of the cause method names, but keeping those that are still required for dealing with widely used classes such as ServletException?

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              jens.b Jens Bannmann
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: