geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shiva Kumar H R" <shiv...@gmail.com>
Subject Re: [Discuss] Model for deployment plans in GEP - Move from EMF to XMLBeans or JAXB?
Date Fri, 14 Mar 2008 05:42:26 GMT
EMF plug-ins are now redundant and have been deleted (GERONIMODEVTOOLS-294).
This led to a lot of GEP dependencies going redundant (GERONIMODEVTOOLS-295)
and those have also been deleted. (Please see the JIRA comments for detailed
information)

GEP has become Surprisingly Thinner - Just 5.4MB!! (down from 12.6MB -
nearly 55% reduction in weight). She is becoming more & more attractive each
day ;)

-- 
Thanks,
Shiva

On Tue, Mar 11, 2008 at 11:48 PM, Shiva Kumar H R <shivahr@gmail.com> wrote:

> The remaining two modules (v20.core & v20.ui) have also been ported to an
> extent. Thanks again Yun Feng for the patch (you seem to be super fast!).
>
> Entire GEP builds successfully now. However there is still a lot more
> porting to be done.
>
> --
> Thanks,
> Shiva
>
> On Thu, Mar 6, 2008 at 3:31 PM, Shiva Kumar H R <shivahr@gmail.com> wrote:
>
> > I have committed Yun Feng's patch into GEP trunk. Thanks very much Yun
> > Feng.
> >
> > Build is successful, except for below two modules:
> > <module>org.apache.geronimo.st.v20.core</module>
> > <module>org.apache.geronimo.st.v20.ui</module>
> >
> > Once those two modules are also ported onto JAXB, complete build would
> > be successful.
> >
> > --
> > Thanks,
> > Shiva
> >
> > On Wed, Mar 5, 2008 at 10:44 PM, Shiva Kumar H R <shivahr@gmail.com>
> > wrote:
> >
> > > Perfect. Thanks Tim. I will concentrate on the various ui packages.
> > >
> > > Yun Feng,
> > > Would you like to explore handling multiple schema versions?
> > >
> > > --
> > > Thanks,
> > > Shiva
> > >
> > > On Wed, Mar 5, 2008 at 10:18 PM, Tim McConnell <tim.mcconne@gmail.com>
> > > wrote:
> > >
> > > > Shiva, with your current experience with the deployment plan portal,
> > > > is it safe
> > > > to assume you will again concentrate on the visual aspects of the
> > > > refactoring
> > > > (deployment plan editors, etc..??) If that is the case, I will
> > > > concentrate on
> > > > the various version specific
> > > > server tool cores (e.g., org.apache.geronimo.st.core, etc)....
> > > >
> > > > Tim McConnell wrote:
> > > > > Hi Shiva, thanks for the update. I will review Yun Feng's patches
> > > > today
> > > > > as well, and start on the refactoring effort as well.....
> > > > >
> > > > > Shiva Kumar H R wrote:
> > > > >> I will be committing Yun Feng's patch today, to kick start GEP
> > > > >> refactoring :)
> > > > >>
> > > > >> This patch adds two new directories under plugins:
> > > > >> org.apache.geronimo.deployment.v11.jaxbmodel, and
> > > > >> org.apache.geronimo.deployment.v21.jaxbmodel
> > > > >> which contain JAXB generated classes for our G plans. The patch
> > > > has
> > > > >> also refactored some part of GEP code to use these JAXB model
> > > > classes
> > > > >> instead of EMF.
> > > > >>
> > > > >> We need to continue refactoring rest of GEP code and eventually
> > > > get
> > > > >> rid of following EMF modules:
> > > > >> org.apache.geronimo.deployment.model
> > > > >> org.apache.geronimo.deployment.model.edit
> > > > >> org.apache.geronimo.v11.deployment.model
> > > > >> org.apache.geronimo.v11.deployment.model.edit
> > > > >>
> > > > >> And further, once we figure out how to handle multiple schemas,
> > > > we
> > > > >> must be able to merge
> > > > org.apache.geronimo.deployment.v11.jaxbmodel and
> > > > >> org.apache.geronimo.deployment.v21.jaxbmodel into *one*
> > > > >>
> > > > >> Once we have such single model which can handle multiple schemas,
> > > > I am
> > > > >> hoping that we could merge these as well:
> > > > >> org.apache.geronimo.st.ui,
> > > > >> org.apache.geronimo.st.v1.ui,
> > > > >> org.apache.geronimo.st.v11.ui,
> > > > >> org.apache.geronimo.st.v20.ui, and
> > > > >> org.apache.geronimo.st.v21.ui
> > > > >>
> > > > >> Just in case we mess up things ;) we have taken backup of
> > > > existing GEP
> > > > >> trunk under branches/2.1/ . We will be committing all new code
> > > > under
> > > > >> trunk.
> > > > >>
> > > > >> And trunk builds might fail for sometime until this refactoring
> > > > is
> > > > >> complete.
> > > > >>
> > > > >> --
> > > > >> Thanks,
> > > > >> Shiva
> > > > >>
> > > > >> On Tue, Mar 4, 2008 at 2:11 PM, Shiva Kumar H R <
> > > > shivahr@gmail.com
> > > > >> <mailto:shivahr@gmail.com>> wrote:
> > > > >>
> > > > >>     There have been further discussions on this in IRC and in
> > > > JIRA. As
> > > > >>     recommended in
> > > > >>
> > > > >>
> > > > http://mail-archives.apache.org/mod_mbox/geronimo-dev/200802.mbox/%3c5da94e5a0802212321m4b282128q89add861e150c64f@mail.gmail.com%3e
> > > > >>
> > > > >>     I am summarizing those discussions below:
> > > > >>     (Tim, DJencks, DBlevins & Yun Feng - Please correct if
am
> > > > wrong)
> > > > >>
> > > > >>     1) JAXB/XMLBeans/DConfigBeans:
> > > > >>     a) On a further discussion about XMLBeans and JAXB, we saw
> > > > that
> > > > >>     writing deployment code might turn out be much easier by
> > > > using JAXB
> > > > >>     rather than XMLBeans.
> > > > >>
> > > > >>     b) On a discussion about whether GEP should ideally be using
> > > > JSR-88
> > > > >>     DConfigBeans, we wondered if JSR-88 DConfigBeans are a dead
> > > > idea &
> > > > >>     should be left alone, because No One other than Geronimo
even
> > > > thinks
> > > > >>     about trying to implement them.
> > > > >>
> > > > >>     So we concluded that it is worth experimenting with JAXB.
> > > > >>
> > > > >>     2) Hints from OpenEJB about using JAXB:
> > > > >>     a) On a discussion about how OpenEJB uses JAXB, it seems
> > > > schemas are
> > > > >>     compiled only once (instead of compiling during every build
> > > > as is
> > > > >>     currently done both in Geronimo and GEP) and checked in to
> > > > the
> > > > >>     source stream.
> > > > >>     I too don't see any point in compiling G schemas during every
> > > > build
> > > > >>     of GEP, and the one time compilation & check in approach
of
> > > > OpenEJB
> > > > >>     looks ideal to me for GEP also. This would lead to
> > > > significant
> > > > >>     savings in build time. Please point out if I am missing
> > > > something.
> > > > >>
> > > > >>     b) It seems that the real beauty (& ease of use) of JAXB
> > > > comes from
> > > > >>     the ability to customize JAXB generated classes (like (i)
> > > > adding
> > > > >>     interfaces, (ii) removing all their wrappers for simple types
> > > > like
> > > > >>     string, int, boolean etc, (iii) using Maps instead of Lists
> > > > for auto
> > > > >>     indexing things that can be keyed, etc). OpenEJB uses those
> > > > >>     customizations. To keep the Customized JAXB classes and
> > > > Schema in
> > > > >>     sync, OpenEJB has unit tests that read in xml documents,
> > > > write them
> > > > >>     out again, then compare the results. A similar approach could
> > > > be
> > > > >>     used in GEP also.
> > > > >>
> > > > >>     3) Handling multiple schema versions
> > > > >>     I guess JAXB could help us better with multiple version of
> > > > schemas.
> > > > >>     (I mean a single set of JAXB classes being able to read/write
> > > > say
> > > > >>     geronimo-web.xml in v1.1, v2.0, v2.0.1 etc). We need to
> > > > explore this
> > > > >>     more.
> > > > >>
> > > > >>     Tim, Yun Feng and myself are looking at completing this
> > > > refactoring
> > > > >>     at the earliest so that we could then focus on other
> > > > JIRAs/features
> > > > >>     & release GEP 2.1. Yun Feng already has a patch that
has
> > > > ported good
> > > > >>     amount of GEP onto JAXB and I am looking at committing it
> > > > tomorrow.
> > > > >>
> > > > >>     If you forsee any concerns with the approaches above, kindly
> > > > reply.
> > > > >>
> > > > >>     --     Thanks,
> > > > >>     Shiva
> > > > >>
> > > > >>
> > > > >>     On Tue, Feb 12, 2008 at 2:16 PM, Shiva Kumar H R <
> > > > shivahr@gmail.com
> > > > >>     <mailto:shivahr@gmail.com>> wrote:
> > > > >>
> > > > >>         Please see 11-Feb IRC chat btw djencks, shivahr &
mcconne
> > > > >>
> > > > http://servlet.uwyn.com/drone/log/bevinbot/geronimo/20080211 for
> > > > >>         further discussions on this.
> > > > >>
> > > > >>         As recommended by DJencks we will experiment using JAXB
> > > > in GEP
> > > > >> 2.1.
> > > > >>
> > > > >>         --         Thanks,
> > > > >>         Shiva
> > > > >>
> > > > >>
> > > > >>         On Feb 11, 2008 9:22 PM, David Jencks <
> > > > david_jencks@yahoo.com
> > > > >>         <mailto:david_jencks@yahoo.com>> wrote:
> > > > >>
> > > > >>
> > > > >>             On Feb 11, 2008, at 7:16 AM, Shiva Kumar H R wrote:
> > > > >>
> > > > >>>             I went through following tutorials of JAXB &
> > > > XMLBeans:
> > > > >>>               a) Java Architecture for XML Binding (JAXB)
> > > > >>>
> > > > >>>
> > > > http://java.sun.com/developer/technicalArticles/WebServices/jaxb/
> > > > >>>               b) Tutorial: First Steps with XMLBeans
> > > > >>>
> > > > >>>
> > > > http://xmlbeans.apache.org/documentation/tutorial_getstarted.html
> > > > >>>
> > > > >>>             Also searched for comparisons btw them. Latest
one I
> > > > could
> > > > >>>             find is the following blog from Jan'2005:
> > > > >>>             http://technology.amis.nl/blog/?p=321
> > > > >>>
> > > > >>>             I am yet to see the value add JAXB brings over
> > > > XMLBeans.
> > > > >>>             Am I missing something?
> > > > >>
> > > > >>             My $0.02:
> > > > >>
> > > > >>             xmlbeans is a complete and accurate representation
of
> > > > the
> > > > >>             xml infoset.  As a result, you can easily manipulate
> > > > the
> > > > >>             xml, but you get a slightly peculiar java object
> > > > model that
> > > > >>             exactly represents the schema and cannot be modified.
> > > > >>
> > > > >>             jaxb is focussed on the java pojos and lets you
> > > > modify the
> > > > >>             pojos considerably from the xml while still providing
> > > > >>             accurate mapping.  This can be much more convenient
> > > > for
> > > > >>             directly constructing a pojo tree from xml suitable
> > > > for
> > > > >>             configuring server components.  It provides fewer
> > > > validity
> > > > >>             checks than xmlbeans.
> > > > >>
> > > > >>             Openejb is using jaxb and I think their deployment
> > > > code is
> > > > >>             pretty simple for the complexity they have to deal
> > > > with.
> > > > >>
> > > > >>             thanks
> > > > >>             david jencks
> > > > >>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>             On Feb 11, 2008 4:44 PM, Shiva Kumar H R
> > > > >>>             <shivahr@gmail.com <mailto:shivahr@gmail.com>>
> > > > wrote:
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>                     Despite my liking for xmlbeans and its
> > > > unique
> > > > >>>                     strengths I think a very strong argument
can
> > > > be
> > > > >>>                     made for moving the deployer code to
jaxb.
> > > > >>>
> > > > >>>                 Interesting!! Let me do some quick learning
of
> > > > jaxb
> > > > >>>                 and start a separate thread on this.
> > > > >>>
> > > > >>>
> > > > >>>                     thanks
> > > > >>>                     david jencks
> > > > >>>
> > > > >>>                     On Feb 8, 2008, at 12:30 AM, Shiva Kumar
H R
> > > > wrote:
> > > > >>>
> > > > >>>>                     2) Geronimo Eclipse Plug-in (GEP):
> > > > >>>>                         a) Model framework for Geronimo
> > > > deployment
> > > > >>>> plans:
> > > > >>>>                     Currently it is EMF (Eclipse Modeling
> > > > Framework).
> > > > >>>>                     With every update to Geronimo deployment
> > > > schema,
> > > > >>>>                     it's a major pain to generate new
EMF
> > > > classes. If
> > > > >>>>                     however, GEP uses the same model
framework
> > > > as
> > > > >>>>                     that of Geronimo server (XMLBeans),
then at
> > > > least
> > > > >>>>                     this problem would be solved. IIUC
JSR-88
> > > > >>>>                     DConfigBeans would be the ideal model
> > > > framework
> > > > >>>>                     for GEP - in that case even if the
model
> > > > >>>>                     framework of server changes in future,
GEP
> > > > would
> > > > >>>>                     be unaffected.
> > > > >>>>
> > > > >>>>                     --                     Thanks,
> > > > >>>>                     Shiva
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>                 --                 Thanks,
> > > > >>>                 Shiva
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>             --             Thanks,
> > > > >>>             Shiva
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >>
> > > > >
> > > >
> > > > --
> > > > Thanks,
> > > > Tim McConnell
> > > >
> > >
> > >
> > >
> >
>

Mime
View raw message