Compile commons.lang for CDC 1.1/Foundation 1.1
-----------------------------------------------

                 Key: LANG-539
                 URL: https://issues.apache.org/jira/browse/LANG-539
             Project: Commons Lang
          Issue Type: Wish
    Affects Versions: 2.4
            Reporter: Wim
             Fix For: 2.x


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;


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

Reply via email to