Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 71172 invoked from network); 10 Jan 2005 18:23:53 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 10 Jan 2005 18:23:53 -0000 Received: (qmail 79235 invoked by uid 500); 10 Jan 2005 18:23:51 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 78724 invoked by uid 500); 10 Jan 2005 18:23:49 -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 Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 78709 invoked by uid 99); 10 Jan 2005 18:23:49 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (hermes.apache.org: local policy) Received: from Unknown (HELO mgd.gluecode.com) (64.14.202.141) by apache.org (qpsmtpd/0.28) with ESMTP; Mon, 10 Jan 2005 10:23:48 -0800 Received: from [192.168.17.100] ([192.168.17.100]) (authenticated bits=0) by mgd.gluecode.com (8.12.10/8.12.10) with ESMTP id j0AINICW028807 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NO) for ; Mon, 10 Jan 2005 10:23:19 -0800 Mime-Version: 1.0 (Apple Message framework v619) In-Reply-To: <20050110131138.95516.qmail@web20621.mail.yahoo.com> References: <20050110131138.95516.qmail@web20621.mail.yahoo.com> Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: Content-Transfer-Encoding: 7bit From: Dain Sundstrom Subject: Re: Build Failure - org/apache/geronimo/deployment/service/GBeanAdapter Date: Mon, 10 Jan 2005 10:24:03 -0800 To: dev@geronimo.apache.org X-Mailer: Apple Mail (2.619) X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N On Jan 10, 2005, at 5:11 AM, anita kulshreshtha wrote: > Let me rephrase this question. Is getDeclaredMethod > supposed to behave like this? Why is it trying to find > GBeanAdaptor class. Shouldn't it give > NoSuchMethodException? In that case the build will > fail gracefully indicating that it is time to build > openejb! I hope my question is not out of scope of > Geronimo. Yes this is expected. Normally when a class, is loaded in Java it is not fully resolved. This means that the byte code was loaded and verified, but not all classes the loaded class depends on were loaded. This is an optimization by the VM engineers to even out load time of an application. When you call getDeclatedMethod, the class is fully resolved, which mean that all dependency classes are loaded and this can cause a NoClassDefFoundError. In this case this is caused by an inconsistent build which is a very abnormal case, so IMO not beneficial to add such a check to the code as it complicates the code. If this could happen in an official release (even if it were rare), I would support adding a check. -dain