Return-Path: Delivered-To: apmail-tomcat-dev-archive@www.apache.org Received: (qmail 60408 invoked from network); 6 Apr 2007 09:04:06 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 Apr 2007 09:04:06 -0000 Received: (qmail 73534 invoked by uid 500); 6 Apr 2007 09:04:05 -0000 Delivered-To: apmail-tomcat-dev-archive@tomcat.apache.org Received: (qmail 73485 invoked by uid 500); 6 Apr 2007 09:04:05 -0000 Mailing-List: contact dev-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Developers List" Delivered-To: mailing list dev@tomcat.apache.org Received: (qmail 73474 invoked by uid 99); 6 Apr 2007 09:04:05 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 02:04:05 -0700 X-ASF-Spam-Status: No, hits=2.0 required=10.0 tests=HTML_MESSAGE X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: local policy) Received: from [68.142.206.243] (HELO smtp110.plus.mail.mud.yahoo.com) (68.142.206.243) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 06 Apr 2007 02:03:57 -0700 Received: (qmail 68165 invoked from network); 6 Apr 2007 09:03:36 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Received:X-YMail-OSG:Mime-Version:In-Reply-To:References:Content-Type:Message-Id:From:Subject:Date:To:X-Mailer; b=gyG5ZpyadZatUhKhyKVtlo2CCC58XhBTye3xF8jKve6FN1TzktmCIygy6GWMtG/D6scFCYA3pnzMFVSIpVKS89/IGWiupVNneU75cjE0EmeF7edTbsVcp7CIu82rDmN5y+utVxFtsJZ4gF+aofP1bD0rxPZrVDrrUddxZaHA3xE= ; Received: from unknown (HELO ?10.11.55.8?) (david_jencks@63.105.20.225 with plain) by smtp110.plus.mail.mud.yahoo.com with SMTP; 6 Apr 2007 09:03:35 -0000 X-YMail-OSG: itzx0tQVM1m24XtsOTsdRCVtHhQHfRhyR9XY6CwZ4LwjQV1iGQmUCr6yV3mP5LPHbrOGjecd3QBYrjpS8ISzQplWPxN.T7GI50kWMpwh520wniuMaB9sDyY8DpoXrA-- Mime-Version: 1.0 (Apple Message framework v752.3) In-Reply-To: <762332FF-72EF-4B5C-B751-5AD88F4F73EB@yahoo.com> References: <46054A21.2090600@hanik.com> <634d38d80703241826k27a47fd7p5bd6f1acfed3a39a@mail.gmail.com> <5DC907D0-EC6C-4C49-B08A-07559B3D8BD9@yahoo.com> <46070869.1070403@apache.org> <415D045C-9443-4B15-A250-7425FCD6A037@yahoo.com> <46092CBA.1090408@apache.org> <762332FF-72EF-4B5C-B751-5AD88F4F73EB@yahoo.com> Content-Type: multipart/alternative; boundary=Apple-Mail-11--25494166 Message-Id: From: David Jencks Subject: Re: Annotation processing - Geronimo injection Date: Fri, 6 Apr 2007 02:03:21 -0700 To: "Tomcat Developers List" X-Mailer: Apple Mail (2.752.3) X-Virus-Checked: Checked by ClamAV on apache.org --Apple-Mail-11--25494166 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Mar 27, 2007, at 8:31 PM, David Jencks wrote: >> >> Right now, it's mostly pita-win (it's a significant >> refactoring) :D You should IMO offer some incentive as part of >> this to justify the refactoring, such as support for web.xml >> annotation overrides in standalone Tomcat (as you can see, there's >> full support for annotations, but not overriding). > > i'll look into this... although I don't see the code involved as > being very connected to what I've been proposing. > i've worked on this some more and come up with a patch that I feel more or less comfortable showing to tomcat :-) at https:// issues.apache.org/jira/browse/GERONIMO-3010 or directly https:// issues.apache.org/jira/secure/attachment/12355053/GERONIMO-3010-3a.patch I'm happy to open a bugzilla entry and attach the patch to it as well, but I also need to keep the patch tracked in geronimo until there's more resolution as to its fate. This patch features: -- xml override of annotations. There's even a manual test via a new EnvEntryExample servlet which is present but not entirely integrated into the examples webapp. -- postCreate and preDestroy annotated methods are looked for on all superclasses per spec. -- Improved interface name of InstanceManager rather than LifecycleProvider, thanks David Blevins -- Jasper does not use any Catalina classes, and catalina only uses a jasper class if it creates its own InstanceManager: if you supply an InstanceManager yourself there is no classes dependency of catalina on jasper (although it appears that startup creates a JspServlet in a default web app???). This removes the need for sharing org.apache.AnnotationProcessor between catalina and jasper. -- jasper loads classes more directly, tomcat uses care in figuring out if security precautions are needed and which classloader should be used. Some more improvements are possible, for example the jasper generated classes are loaded twice. I'd rather make sure that the current state doesn't break a lot of the tck before making a lot more changes. Comments? thanks david jencks --Apple-Mail-11--25494166--