You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2010/03/10 11:08:09 UTC

svn commit: r921276 - /myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/ReflectionUtil.java

Author: werpu
Date: Wed Mar 10 10:08:09 2010
New Revision: 921276

URL: http://svn.apache.org/viewvc?rev=921276&view=rev
Log:
https://issues.apache.org/jira/browse/MYFACES-2596

quick fix for the issue but in the end this needs to be unified under share, our version has the better classloader resolution, the facelet version has primitives and array type resolution



Modified:
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/ReflectionUtil.java

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/ReflectionUtil.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/ReflectionUtil.java?rev=921276&r1=921275&r2=921276&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/ReflectionUtil.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/util/ReflectionUtil.java Wed Mar 10 10:08:09 2010
@@ -21,6 +21,7 @@ package org.apache.myfaces.view.facelets
 import java.lang.reflect.Array;
 import java.util.Arrays;
 
+import org.apache.myfaces.shared_impl.util.ClassLoaderUtils;
 import org.apache.myfaces.shared_impl.util.ClassUtils;
 
 public class ReflectionUtil
@@ -55,12 +56,17 @@ public class ReflectionUtil
             if (name.endsWith("[]"))
             {
                 String nc = name.substring(0, name.length() - 2);
-                c = Class.forName(nc, false, ClassUtils.getContextClassLoader());
+                //we should route through our shared forName, due to plugins and due to bette4r classloader resolution
+                c  = ClassUtils.classForName(nc);
+                //old code left for double checking
+                //c = Class.forName(nc, false, ClassUtils.getContextClassLoader());
                 c = Array.newInstance(c, 0).getClass();
             }
             else
             {
-                c = Class.forName(name, false, ClassUtils.getContextClassLoader());
+                c  = ClassUtils.classForName(name);
+                //old code left for double checking
+                //c = Class.forName(name, false, ClassUtils.getContextClassLoader());
             }
         }