Author: rickhall
Date: Fri Sep  4 23:39:33 2009
New Revision: 811573

URL: http://svn.apache.org/viewvc?rev=811573&view=rev
Log:
Creating inner classes with reflection requires the outer class to
be passed into the constructor. (FELIX-1193)

Modified:
    
felix/trunk/framework/src/main/java/org/apache/felix/framework/ModuleImpl.java

Modified: 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ModuleImpl.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/apache/felix/framework/ModuleImpl.java?rev=811573&r1=811572&r2=811573&view=diff
==============================================================================
--- 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ModuleImpl.java 
(original)
+++ 
felix/trunk/framework/src/main/java/org/apache/felix/framework/ModuleImpl.java 
Fri Sep  4 23:39:33 2009
@@ -1284,13 +1284,14 @@
                 try
                 {
                     Constructor ctor = (Constructor) 
m_secureAction.getConstructor(
-                        ModuleClassLoader.class, new Class[] { 
ClassLoader.class });
+                        ModuleClassLoader.class, new Class[] { 
ModuleImpl.class, ClassLoader.class });
                     m_classLoader = (ModuleClassLoader)
-                        m_secureAction.invoke(ctor, new Object[] { 
determineParentClassLoader() });
+                        m_secureAction.invoke(ctor, new Object[] { this, 
determineParentClassLoader() });
                 }
                 catch (Exception ex)
                 {
-                    throw new RuntimeException("Unable to create module class 
loader: " +  ex.getMessage());
+                    throw new RuntimeException("Unable to create module class 
loader: "
+                        + ex.getMessage() + " [" + ex.getClass().getName() + 
"]");
                 }
             }
             else


Reply via email to