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

Compile commons.lang for CDC 1.1/Foundation 1.1

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.4
    • 3.0
    • lang.exception.*
    • None

    Description

      I try to compile the commons.lang for use on small memory devices. All classes compile fine against CDC 1.1/Foundation 1.1 except ExceptionUtils which uses the SQLException class which is not defined in this environment. Is it possible to replace the source with the reflection version:

      Index: ExceptionUtils.java
      ===================================================================
      — ExceptionUtils.java (revision 32)
      +++ ExceptionUtils.java (working copy)
      @@ -22,7 +22,6 @@
      import java.lang.reflect.Field;
      import java.lang.reflect.InvocationTargetException;
      import java.lang.reflect.Method;
      -import java.sql.SQLException;
      import java.util.ArrayList;
      import java.util.Arrays;
      import java.util.List;
      @@ -361,8 +360,13 @@
      private static Throwable getCauseUsingWellKnownTypes(Throwable throwable) {
      if (throwable instanceof Nestable)

      { return ((Nestable) throwable).getCause(); - }

      else if (throwable instanceof SQLException)

      { - return ((SQLException) throwable).getNextException(); + }

      else if (throwable.getClass().getName().equals("java.sql.SQLException")) {
      + try

      { + return (Throwable) throwable.getClass().getMethod("getNextException", null).invoke(throwable, null); + }

      catch (Exception e)

      { + // Should not happen + return null; + }

      } else if (throwable instanceof InvocationTargetException)

      { return ((InvocationTargetException) throwable).getTargetException(); }

      else {
      @@ -459,7 +463,7 @@

      if (throwable instanceof Nestable)

      { return true; - }

      else if (throwable instanceof SQLException)

      { + }

      else if (throwable.getClass().getName().equals("java.sql.SQLException"))

      { return true; }

      else if (throwable instanceof InvocationTargetException) {
      return true;

      Attachments

        Activity

          People

            Unassigned Unassigned
            wim.jongman@gmail.com Wim
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: