geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tim McConnell <tim.mcco...@gmail.com>
Subject Re: JSR-88 1.2 Proposed Design for Geronimo Annotation Processing
Date Thu, 18 Jan 2007 03:19:38 GMT

anita kulshreshtha wrote:
> --- Tim McConnell <tim.mcconne@gmail.com> wrote:
> 
>> Hi, I still think there needs to be a general consensus for the
>> handling of annotations in Geronimo. 
>> So, to better explain this design proposal I've
>> created a few simple UML diagrams that demonstrates how it might work
>> with one of the Geronimo 
>> builders--i.e. Tomcat.
>>
>> Here's the link to the URL diagrams:
>> http://cwiki.apache.org/GMOxDEV/jsr-88-12.html
>>
>> -- The first is just a diagram of the pertinent high-level use cases
>> for JSR-88 1.2
>>
>> -- The second is an interaction diagram of deployment at a very
>> high-level as it currently works for 
>> Tomcat
>>
>> -- The third is the proposed interaction diagram of how deployment
>> will generally flow with 
>> annotations. Namely:
>>          -- Geronimo will find/discover all the annotations in the
>> artifact being deployed prior to 
>> the createModule invocation on the TomcatBuilder
>>          -- Geronimo will then update the deployment descriptor tags
>> in the XML accordingly and then 
>> set the Metadata-Complete tag
>>          -- Finally, during installation of module, Geronimo will
>> invoke Tomcat's 
>> AnnotationProcessor implementation and pass it the array of
>> annotations that have been discovered, 
>> and Tomcat's AnnotationProcessor will handle handle those
>> runtime-type annotations (e.g., 
>> PreDestory, PostConstruct, etc...) without corresponding deployment
>> descriptor tags. Note also that 
>> Tomcat's AnnotationProcessor handles the resource injection as well.
> 
>   IIUC Tomcat's AnnotationProcessor will also be scanning
> WEB-INF/classes and WEB-INF/lib and discovering these annotations. Is
> is not going to provide a JSR77 friendly DD back to us? Is that why we
> must duplicate some of the work? 
> 
> Thanks
> Anita
> 

Hi Anita, the current plan is to use David Blevin's ClassFinder code from XBEAN project to
help 
create a "JSR-77 friendly" DD when necessary and/or appropriate for Geronimo. And hopefully
by using 
Tomcat's own annotation processor we'll mitigate duplication of code/work.....

>> -- The fourth is just a class diagram (not yet complete) that shows
>> the new Geronimo annotation classes
>>
>>
>> Questions:
>> -- Is this a pattern that can be consistently used for other builders
>> as well like Jetty, Axis, 
>> OpenEJB, Web Services, etc ??
>> -- Is it reasonable to assume that these other components will have
>> their own AnnotationProcessor 
>> implementation (like Tomcat) that can be invoked by Geronimo during
>> deployment ??
>>
>> -- 
>> Thanks,
>> Tim McConnell
>>
> 
> 
> 
>  
> ____________________________________________________________________________________
> TV dinner still cooling? 
> Check out "Tonight's Picks" on Yahoo! TV.
> http://tv.yahoo.com/
> 

-- 
Thanks,
Tim McConnell

Mime
View raw message