You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by vi...@apache.org on 2011/09/06 08:48:50 UTC

svn commit: r1165512 - /geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java

Author: violalu
Date: Tue Sep  6 06:48:50 2011
New Revision: 1165512

URL: http://svn.apache.org/viewvc?rev=1165512&view=rev
Log:
GERONIMO-6146 fix classcast exception when creating oracle rac datasource

Modified:
    geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java

Modified: geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java?rev=1165512&r1=1165511&r2=1165512&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java (original)
+++ geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java Tue Sep  6 06:48:50 2011
@@ -21,6 +21,7 @@ import java.lang.reflect.Constructor;
 import java.util.HashMap;
 import java.util.LinkedHashSet;
 import java.util.Map;
+import java.util.Properties;
 
 import javax.resource.ResourceException;
 import javax.resource.spi.ManagedConnectionFactory;
@@ -190,7 +191,24 @@ public class ManagedConnectionFactoryWra
         ClassLoader oldTCL = thread.getContextClassLoader();
         thread.setContextClassLoader(classLoader);
         try {
-            delegate.setAttribute(name, value);
+        	//Convert java.util.Properties to java.lang.String
+        	if(value != null && value instanceof Properties){
+        		Properties ps = (Properties) value;
+				if (!ps.isEmpty()) {
+					String s = null;
+					for (Object o : ps.keySet()) {
+						String k = (String) o;
+						String v = ps.getProperty(k);
+						s = k + "=" + v + ",";
+						log.debug("Setting " + k + "=" + value);
+					}
+					delegate.setAttribute(name, s);
+					log.debug("Setting " + name + " value " + s);
+				}        		
+        	} else {        		
+        		delegate.setAttribute(name, value);
+        		log.debug("Setting " + name + " value " + value);
+        	}
         } finally {
             thread.setContextClassLoader(oldTCL);
         }



Re: svn commit: r1165512 - /geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java

Posted by viola lu <vi...@gmail.com>.
Okay, i will change String to StringBuilder in String s.

On Tue, Sep 6, 2011 at 3:06 PM, Shawn Jiang <ge...@gmail.com> wrote:

> Hi Viola,
>
> a quick comment.
>
> On Tue, Sep 6, 2011 at 2:48 PM, <vi...@apache.org> wrote:
>
>> Author: violalu
>> Date: Tue Sep  6 06:48:50 2011
>> New Revision: 1165512
>>
>> URL: http://svn.apache.org/viewvc?rev=1165512&view=rev
>> Log:
>> GERONIMO-6146 fix classcast exception when creating oracle rac datasource
>>
>> Modified:
>>
>>  geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
>>
>> Modified:
>> geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
>> URL:
>> http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java?rev=1165512&r1=1165511&r2=1165512&view=diff
>>
>> ==============================================================================
>> ---
>> geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
>> (original)
>> +++
>> geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
>> Tue Sep  6 06:48:50 2011
>> @@ -21,6 +21,7 @@ import java.lang.reflect.Constructor;
>>  import java.util.HashMap;
>>  import java.util.LinkedHashSet;
>>  import java.util.Map;
>> +import java.util.Properties;
>>
>>  import javax.resource.ResourceException;
>>  import javax.resource.spi.ManagedConnectionFactory;
>> @@ -190,7 +191,24 @@ public class ManagedConnectionFactoryWra
>>         ClassLoader oldTCL = thread.getContextClassLoader();
>>         thread.setContextClassLoader(classLoader);
>>         try {
>> -            delegate.setAttribute(name, value);
>> +               //Convert java.util.Properties to java.lang.String
>> +               if(value != null && value instanceof Properties){
>> +                       Properties ps = (Properties) value;
>> +                               if (!ps.isEmpty()) {
>> +                                       String s = null;
>> +                                       for (Object o : ps.keySet()) {
>> +                                               String k = (String) o;
>> +                                               String v =
>> ps.getProperty(k);
>> +                                               s = k + "=" + v + ",";
>>
>
> You might want to use StringBuffer/StringBuilder here.
>
>
>> +                                               log.debug("Setting " + k +
>> "=" + value);
>>
>
> Above line could be deleted becuase you added a full string log message
> below.
>
>  +                                       }
>> +                                       delegate.setAttribute(name, s);
>> +                                       log.debug("Setting " + name + "
>> value " + s);
>> +                               }
>> +               } else {
>> +                       delegate.setAttribute(name, value);
>> +                       log.debug("Setting " + name + " value " + value);
>> +               }
>>         } finally {
>>             thread.setContextClassLoader(oldTCL);
>>         }
>>
>>
>>
>
>
> --
> Shawn
>



-- 
viola

Apache Geronimo

Re: svn commit: r1165512 - /geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java

Posted by Shawn Jiang <ge...@gmail.com>.
Hi Viola,

a quick comment.

On Tue, Sep 6, 2011 at 2:48 PM, <vi...@apache.org> wrote:

> Author: violalu
> Date: Tue Sep  6 06:48:50 2011
> New Revision: 1165512
>
> URL: http://svn.apache.org/viewvc?rev=1165512&view=rev
> Log:
> GERONIMO-6146 fix classcast exception when creating oracle rac datasource
>
> Modified:
>
>  geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
>
> Modified:
> geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
> URL:
> http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java?rev=1165512&r1=1165511&r2=1165512&view=diff
>
> ==============================================================================
> ---
> geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
> (original)
> +++
> geronimo/server/branches/2.1/plugins/connector/geronimo-connector/src/main/java/org/apache/geronimo/connector/outbound/ManagedConnectionFactoryWrapper.java
> Tue Sep  6 06:48:50 2011
> @@ -21,6 +21,7 @@ import java.lang.reflect.Constructor;
>  import java.util.HashMap;
>  import java.util.LinkedHashSet;
>  import java.util.Map;
> +import java.util.Properties;
>
>  import javax.resource.ResourceException;
>  import javax.resource.spi.ManagedConnectionFactory;
> @@ -190,7 +191,24 @@ public class ManagedConnectionFactoryWra
>         ClassLoader oldTCL = thread.getContextClassLoader();
>         thread.setContextClassLoader(classLoader);
>         try {
> -            delegate.setAttribute(name, value);
> +               //Convert java.util.Properties to java.lang.String
> +               if(value != null && value instanceof Properties){
> +                       Properties ps = (Properties) value;
> +                               if (!ps.isEmpty()) {
> +                                       String s = null;
> +                                       for (Object o : ps.keySet()) {
> +                                               String k = (String) o;
> +                                               String v =
> ps.getProperty(k);
> +                                               s = k + "=" + v + ",";
>

You might want to use StringBuffer/StringBuilder here.


> +                                               log.debug("Setting " + k +
> "=" + value);
>

Above line could be deleted becuase you added a full string log message
below.

+                                       }
> +                                       delegate.setAttribute(name, s);
> +                                       log.debug("Setting " + name + "
> value " + s);
> +                               }
> +               } else {
> +                       delegate.setAttribute(name, value);
> +                       log.debug("Setting " + name + " value " + value);
> +               }
>         } finally {
>             thread.setContextClassLoader(oldTCL);
>         }
>
>
>


-- 
Shawn