From 31dcc3c91b1b5c069503d8d5f20e69a7465b14b6 Mon Sep 17 00:00:00 2001 From: wenshao Date: Fri, 10 Aug 2012 15:03:03 +0800 Subject: [PATCH 1/2] fix pom.xml --- pom.xml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 696465cc14..6e3a3a52c4 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.alibaba druid - 0.2.7-SNAPSHOT + 0.2.6-SNAPSHOT jar druid @@ -316,9 +316,10 @@ 11.2.0.3 provided --> - com.oracle - ojdbc14 - 10.2.0.2.0 + com.oracle + ojdbc14 + 10.2.0.2 + provided From 106bdf9af82b492f32594942512dd3de5d62a3ec Mon Sep 17 00:00:00 2001 From: wenshao Date: Fri, 10 Aug 2012 15:07:44 +0800 Subject: [PATCH 2/2] bug fixed for ReflectionUtils --- .../stat/DruidDataSourceStatJNDIStatStrategy.java | 12 +++++++++++- .../com/alibaba/druid/util/ReflectionUtils.java | 14 ++++++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatJNDIStatStrategy.java b/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatJNDIStatStrategy.java index d8026865f4..9d0091a603 100644 --- a/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatJNDIStatStrategy.java +++ b/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatJNDIStatStrategy.java @@ -3,12 +3,22 @@ package com.alibaba.druid.stat; import java.util.List; import java.util.Map; +import com.alibaba.druid.support.logging.Log; +import com.alibaba.druid.support.logging.LogFactory; import com.alibaba.druid.util.ReflectionUtils; public class DruidDataSourceStatJNDIStatStrategy implements DruidDataSourceStatStrategy{ + private final static Log LOG = LogFactory.getLog(DruidDataSourceStatJNDIStatStrategy.class); private Object getStrategyB() { - return ReflectionUtils.getClassFromWebContainerOrCurrentClassLoader("com.alibaba.druid.stat.DruidDataSourceStatDefaultStrategy"); + Class clazz = ReflectionUtils.getClassFromWebContainerOrCurrentClassLoader("com.alibaba.druid.stat.DruidDataSourceStatDefaultStrategy"); + Object object = null; + try { + object = clazz.newInstance(); + } catch (Exception e) { + LOG.error(e.getMessage(), e); + } + return object; } @SuppressWarnings("unchecked") diff --git a/src/main/java/com/alibaba/druid/util/ReflectionUtils.java b/src/main/java/com/alibaba/druid/util/ReflectionUtils.java index 045313c4ec..223a861cd6 100644 --- a/src/main/java/com/alibaba/druid/util/ReflectionUtils.java +++ b/src/main/java/com/alibaba/druid/util/ReflectionUtils.java @@ -42,10 +42,20 @@ public class ReflectionUtils { } } - public static Object callObjectMethod(Object obj, String methodName, Object... methodParams) { + public static Object callObjectMethod(Object obj, String methodName) { try { Method m = obj.getClass().getMethod(methodName); - return m.invoke(obj, methodParams); + return m.invoke(obj); + } catch (Exception e) { + LOG.warn("callObjectMethod fail:class=" + obj.getClass().getName() + " method=" + methodName, e); + return null; + } + } + + public static Object callObjectMethod(Object obj, String methodName, Integer id) { + try { + Method m = obj.getClass().getMethod(methodName, Integer.class); + return m.invoke(obj, id); } catch (Exception e) { LOG.warn("callObjectMethod fail:class=" + obj.getClass().getName() + " method=" + methodName, e); return null;