Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 82053 invoked from network); 23 Nov 2005 23:11:07 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 23 Nov 2005 23:11:07 -0000 Received: (qmail 11486 invoked by uid 500); 23 Nov 2005 23:11:00 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 11415 invoked by uid 500); 23 Nov 2005 23:11:00 -0000 Mailing-List: contact dev-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 11401 invoked by uid 99); 23 Nov 2005 23:10:59 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 23 Nov 2005 15:10:59 -0800 X-ASF-Spam-Status: No, hits=0.5 required=10.0 tests=DNS_FROM_RFC_ABUSE X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [216.136.173.59] (HELO smtp015.mail.yahoo.com) (216.136.173.59) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 23 Nov 2005 15:12:31 -0800 Received: (qmail 34418 invoked from network); 23 Nov 2005 23:10:38 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Received:Mime-Version:In-Reply-To:References:Content-Type:Message-Id:Content-Transfer-Encoding:From:Subject:Date:To:X-Mailer; b=rFADjR62Mni0dchIhZMwpEHCpK9E+OnkVS6PmJUuogAtnC7CuDbeW0f3F0xap9Zvh/sGyqQ87UYNbGSz5mi+msBILOtB81xslXMwAboGn0+glkAMUD9fuenLpaLepJ/xHH56c0tk3Ykk3VqSwg90TwSb2jQDWw4M75Nc2lRk87w= ; Received: from unknown (HELO ?192.168.1.5?) (david?jencks@66.93.38.137 with plain) by smtp015.mail.yahoo.com with SMTP; 23 Nov 2005 23:10:38 -0000 Mime-Version: 1.0 (Apple Message framework v622) In-Reply-To: <20051123203409.16484.qmail@minotaur.apache.org> References: <20051123203409.16484.qmail@minotaur.apache.org> Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <4a4540755d31c44dcfd8b7bc1f2ef716@yahoo.com> Content-Transfer-Encoding: 7bit From: David Jencks Subject: This appears to have broken configs build: Re: svn commit: r348552 - in /geronimo/trunk/modules/kernel/src: java/org/apache/geronimo/kernel/basic/ java/org/apache/geronimo/kernel/proxy/ test/org/apache/geronimo/kernel/ Date: Wed, 23 Nov 2005 15:10:32 -0800 To: dev@geronimo.apache.org X-Mailer: Apple Mail (2.622) X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N On Nov 23, 2005, at 12:34 PM, dain@apache.org wrote: > Author: dain > Date: Wed Nov 23 12:33:58 2005 > New Revision: 348552 > > URL: http://svn.apache.org/viewcvs?rev=348552&view=rev > Log: > GERONIMO-1064 change proxy generation to always use an explicit class > loader > > Added: > > geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/ > proxy/ProxyCreationException.java (with props) > Modified: > > geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/ > basic/BasicProxyManager.java > > geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/ > basic/BasicProxyMap.java > > geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/ > proxy/ProxyManager.java > > geronimo/trunk/modules/kernel/src/test/org/apache/geronimo/kernel/ > GBeanTest.java > + /** > + * Creates a proxy factory for GBeans of the specified type. The > proxy class will be created within the class > + * loader from which the specified type was loaded, or from the > system class loader if the specified type has > + * a null class loader. > + * > + * @param type the type of the proxies this factory should create > + * @return the proxy factory > + */ > + public ProxyFactory createProxyFactory(Class type) { > + if (type == null) throw new NullPointerException("type is > null"); > + > + ClassLoader classLoader = type.getClassLoader(); > + if(classLoader == null) { > + classLoader = ClassLoader.getSystemClassLoader(); > + } > + > + return createProxyFactory(new Class[] {type}, classLoader); > + } > + > I don't think the system classloader can ever be correct, at least it seems to break the configs-based build. The enhancer needs to be able to load cglib classes from the classloader you use, and it can't from the system classloader (or whatever was being returned from ClassLoader.getSystemClassLoader()). If I change this to classLoader = this.getClass().getClassLoader(); my build works. Do you see any problem with this? thanks david jencks