dev@glassfish.java.net

Re: HEADS UP: Upgrading the schema2beans.jar for appserver ...

From: Jerome Dochez <Jerome.Dochez_at_Sun.COM>
Date: Tue, 17 Jan 2006 16:47:27 -0800

Kedar Mhaswade wrote:
> Jerome,
> I think the first order is to make sure that we upgrade to the
> latest schema2beans.jar that is available, along with the
> corresponding source. The source is required so that the classes from
> schema2beansdev.jar are modified a little to suit our requirements for
> generation of the beans (serverbeans/clientbeans).
> Will it be OK if we first upgrade to s2b.jar from NB 4.1 release
> and then later on take up the changes to use Pure Beans? I thought it
> was better to separate these two tasks because the use of the so
> called "runtimeless" beans is an enhancement, whereas the upgrade to
> the latest s2b.jar is a must.
that's absolutely fine with me as long as we don't drop the effort after
*this* integration.
>
> What Alex meant regarding version mismatch was there is at least
> one class in the latest s2b.jar that is changed in an incompatible
> manner from earlier release (Version.class). So, all the classes in
> GlassFish source that depend on this class must be regenerated.
I assumed we would regenerate all the sources when we would switch to
"pure" anyhow so what you are telling me is that we would regenerated
twice, right ? I don't see that as a problem as long as the contract
offered by those beans (at least the contract used by the appserver
components) remains compatible.
>
> Please let us know.
>
> Regards,
> Kedar
>
>
> Jerome Dochez wrote:
>
>> Alex Kravtchenko wrote:
>>
>>> Hi Jerome,
>>>
>>> Sorry for the delay.
>>> What do you mean under "pure" JavaBeans? Self-contained beans,
>>> not requiring the thick base classes(s2b runtime)?
>>
>> yes
>>
>>> ConfigBeans are following the JavaBeans getters/setters
>>> signature, but they extend s2b's BaseBean class, so probably they
>>> could no be called "pure" JavaBeans. Meanwile, these beans are
>>> tightly bound to xml file and these rintime classes actually take
>>> care of such beans persistance (mapping/reading/writting of the
>>> xml-tree/file). Anyway this functioality should be implemented
>>> whether in admin or in beans theirselves.
>>
>> I understand that s2b has the functionality to generate "pure"
>> JavaBeans (look at the link below) that will have these features
>> wired on the beans themselves rather than relying on the runtime
>> library. That would allow us to not have to ship the s2b runtime and
>> free us from yet another binary dependency.
>>
>>> After discussion on admin team meeting with Kedar and Abhijit, we
>>> decided not to run to "pure" standalone java beans, if their
>>> generation is possible (we do not know if shema2beans can generate
>>> standalone, not requiring runtime lib , beans at all).
>>
>> http://schema2beans.netbeans.org/docs.html#GenerateRuntimeless
>>
>>>
>>>
>>> Regarding schema2beans versions. This issue appears because we use
>>> s2b runtime.
>>> Even if we will use s2b runtime lib, then hopefully 4.0 generated
>>> beans will be compatible with any runtime libraries of later
>>> versions. Unfortunately, it is not true for beans generated under
>>> erier version (v.3.5 beans are not compatible with later libs).
>>> That was the main reason to move to recent schema2beans version.
>>
>> I am not sure I understand why you mean. I think you should use
>> anything after 4.0, the more recent is probably the better. Would
>> that be an issue ?
>>
>>>
>>> Kedar, could you please add your comments.
>>> Thanks,
>>> Alex
>>>
>>> Jerome Dochez wrote:
>>>
>>>> Hi Alex,
>>>>
>>>> I have not seen an answer to this email...
>>>>
>>>> Jerome Dochez wrote:
>>>>
>>>>> This is great.
>>>>>
>>>>> + have you tried to generate the pure JavaBeans to see if the
>>>>> added footprint is smaller that 300K ?
>>>>> + still not clear why the version we would use is important.
>>>>>
>>>>> Thanks, Jerome
>>>>>
>>>>> Alex Kravtchenko wrote:
>>>>>
>>>>>> Hi Jerome,
>>>>>>
>>>>>> Beans, generated by s2b still extend schema2bean's BaseBean
>>>>>> class and require schema2beans run-time library.
>>>>>> Starting from netbeans 4.x, schema2beans module is divided onto
>>>>>> two jar files - schema2beans.jar (~300Mb) and schema2beansdev.jar
>>>>>> (~900Mb).
>>>>>> The second jar file is needed only for beans generation phase.
>>>>>> The first one (runtime) is merging into appserv-rt.jar during
>>>>>> bootstraping.
>>>>>> So, switching to recent versions will eliminate a lot of
>>>>>> appserver's runtime footprint.
>>>>>>
>>>>>> Alex
>>>>>>
>>>>>> Jerome Dochez wrote:
>>>>>>
>>>>>>> Hi Alex
>>>>>>>
>>>>>>> why this important ?
>>>>>>>
>>>>>>> I suggested we should be generating pure JavaBeans (no runtime
>>>>>>> dependency of class libraries) and therefore the s2b would only
>>>>>>> be used a build time. Is this not happening yet ?
>>>>>>>
>>>>>>> Jerome
>>>>>>>
>>>>>>> Alex Kravtchenko wrote:
>>>>>>>
>>>>>>>> Hi Jerome,
>>>>>>>>
>>>>>>>> No, we did not integrated new schema2beans yet. It can be
>>>>>>>> done by the next week beginnig.
>>>>>>>> Unfortunately, we still have not received answer on question:
>>>>>>>> " Which Netbeans version should be incorporated with glassfish
>>>>>>>> - 4.1, 4.2 or 5.0?"
>>>>>>>> I prepared and tested usage s2b of netbeans_4.1 because this
>>>>>>>> version has synchronized binaries and sources on netbeans.org.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> --Alex
>>>>>>>>
>>>>>>>> Jerome Dochez wrote:
>>>>>>>>
>>>>>>>>> Kedar
>>>>>>>>>
>>>>>>>>> Have you integrated this in the trunk ?
>>>>>>>>>
>>>>>>>>> Jerome
>>>>>>>>>
>>>>>>>>> Kedar Mhaswade wrote:
>>>>>>>>>
>>>>>>>>>> We have Beta Hard Code Freeze (HCF) coming up on Monday,
>>>>>>>>>> 12/18/2005. Hence, we are postponing this integration until
>>>>>>>>>> after that so that there are no stability issues. A separate
>>>>>>>>>> notice will be sent when we take this up after the HCF.
>>>>>>>>>>
>>>>>>>>>> Thanks and Regards,
>>>>>>>>>> Kedar
>>>>>>>>>>
>>>>>>>>>> Kedar Mhaswade wrote:
>>>>>>>>>>
>>>>>>>>>>> All,
>>>>>>>>>>> Alexandre Kravtchenko and I are planning to upgrade the
>>>>>>>>>>> schema2beans.jar that is part of Glassfish binary
>>>>>>>>>>> dependencies. This will be done by December 18, 2005. We are
>>>>>>>>>>> planning to use the latest 4.2.0 version of this jar that
>>>>>>>>>>> will be staged in the process. More could be found about
>>>>>>>>>>> this jar at
>>>>>>>>>>> http://schema2beans.netbeans.org/servlets/ProjectDocumentList.
>>>>>>>>>>>
>>>>>>>>>>> Note that we have serverbeans (used by the server runtime
>>>>>>>>>>> to modify and persist domain.xml) and clientbeans (required
>>>>>>>>>>> by the application client container) depending upon this
>>>>>>>>>>> jar. We will make sure that the generation of beans is
>>>>>>>>>>> successful and will make minor modifications to the base
>>>>>>>>>>> classes to make the beans work with the changes in latest
>>>>>>>>>>> schema2beans.jar.
>>>>>>>>>>>
>>>>>>>>>>> We will run the Quicklook and other required tests. Note
>>>>>>>>>>> that we have not modified other parts of server that might
>>>>>>>>>>> be using other versions of Netbeans for their purpose. We
>>>>>>>>>>> think that nothing else is impacted because of this.
>>>>>>>>>>>
>>>>>>>>>>> As a result of this integration, classes from new
>>>>>>>>>>> schema2beans.jar will be made part of appserv-admin.jar, new
>>>>>>>>>>> serverbeans and clientbeans will be generated and checked in
>>>>>>>>>>> to Glassfish sources.
>>>>>>>>>>>
>>>>>>>>>>> The basic reason for this upgrade is to use the latest
>>>>>>>>>>> from schema2beans and to try to reduce the footprint of
>>>>>>>>>>> server by not using the classes in earlier version of this
>>>>>>>>>>> jar that are useful only to generate the beans and not
>>>>>>>>>>> required at runtime.
>>>>>>>>>>>
>>>>>>>>>>> Let us know if you see any concerns.
>>>>>>>>>>>
>>>>>>>>>>> Regards,
>>>>>>>>>>> Kedar/Alex.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>
>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>> For additional commands, e-mail:
>>>>>>>>>>> dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>