IMHO no module should insert new rules in the server.xml reader.
It is already complex enough.

All modules should use a single syntax, based on JMX - where you specify the
mbean name, and then attributes you want to set. If you need more
structure - define
additional mbeans. There are plenty of example - I'm sure someone more
familiar with jboss can explain why it's better and more flexible this
way :-)

As for 'use the same jar name' and system property - a strong -1 if
it's not too late :-)
Why ? Looking for trouble ? Is confusing the user a goal ? Just use a
different name, leave both of them around - you can treat them as
separate modules.

Costin

On 5/4/06, Peter Rossbach <[EMAIL PROTECTED]> wrote:
Hey Costin,

look at o.a.c.starter.ClusterRuleSetFactory


 > Snip ----
         //OLD CLUSTER 1
         //first try the same classloader as this class server/lib
         try {
             return loadRuleSet
(prefix,"org.apache.catalina.cluster.ClusterRuleSet",ClusterRuleSetFacto
ry.class.getClassLoader());
         } catch ( Exception x ) {
             //display warning
             if ( log.isDebugEnabled() ) log.debug("Unable to load
ClusterRuleSet (org.apache.catalina.cluster.ClusterRuleSet), falling
back on context classloader");
         }
         //try to load it from the context class loader
         try {
             return loadRuleSet
(prefix,"org.apache.catalina.cluster.ClusterRuleSet",Thread.currentThrea
d().getContextClassLoader());
         } catch ( Exception x ) {
             //display warning
             if ( log.isDebugEnabled() ) log.debug("Unable to load
ClusterRuleSet (org.apache.catalina.cluster.ClusterRuleSet), will try
to load the HA cluster");
         }

         //NEW CLUSTER 2
         //first try the same classloader as this class server/lib
         try {
             return loadRuleSet
(prefix,"org.apache.catalina.ha.ClusterRuleSet",ClusterRuleSetFactory.cl
ass.getClassLoader());


< Snap -----

and ha currently build same jar name as the current cluster module.
Current and new cluster has not the same configuration dialect. :-)

My idea is, that we set instead a system.properties at
catalina.properties like:
digester.cluster.ruleset.classname=org.apache.catalina.cluster.ClusterRu
leSet
digester.cluster.ruleset.classname=org.apache.catalina.ha.ClusterRuleSet


Then we can integrate new ha at normal build and user can easliy
switch implementation.

What you thing about this idea Filip and Costin?

Peter

Am 04.05.2006 um 20:23 schrieb Costin Manolache:

> On 5/4/06, Peter Rossbach <[EMAIL PROTECTED]> wrote:
>> I think we can merge both cluster and storeconfig modules to new tc
>> 6. For current user it is easier.
>>
>> Only change is that new ha cluster module are packaged as seperate
>> jar (name change a build.xml) and we must change the bootstrap logic
>> at config parsing. I think user better switch cluster implementation
>> with system.properties as autodetect a class. Then testing
>> current and new cluster module are a lot easier.
>
> Could you explain a bit ?
>
> My understanding is that ha is an optional feature, that users can
> turn on - i.e.
> sort of a separate module, with no dependency between tomcat and ha.
>
> For modules - I assumed that each of them is a JMX component, that can
> be configured using only JMX calls. I.e. no system.properties or
> other change
> to bootstrap logic.
>
> If this is not the case - why and can we fix it ?
>
> Re: moving the code to the src/ tree - I'm not very sure. I think it
> was a clear benefit to
> have all core tomcat components in the same tree - i.e. connectors,
> jasper, catalina.
>
+1
> But I think it would also be good to have a separate 'modules' and
> 'webapps' area, and
> keep them separate, at least for things that are not required for a
> basic tomcat. Or at least for things that have external deps, or are
> big.
>
+1
> Costin
>
>>
>> After merge I can start session manager refactoring and later I made
>> a tc 5.5 backport.
>>
>> Regards
>> Peter
>>
>>
>>
>> Am 04.05.2006 um 17:12 schrieb Remy Maucherat:
>>
>> > Hi,
>> >
>> > I was wondering if I should merge the code for the core manager
>> > webapp in the main source tree, or if I should keep them in the
>> > webapps subfolders. There is one dependency for the manager webapp
>> > on commons-fileupload 1.0 (so if the code for the webapp is merged
>> > in the main source tree, commons-fileupload will get the package
>> > renaming treatment).
>> >
>> > Similarly, the clustering module (the new ones, most likely) as
>> > well as the storeconfig should most likely be merged in the main
>> > source tree.
>> >
>> > Rémy
>> >
>> >
>> ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: [EMAIL PROTECTED]
>> > For additional commands, e-mail: [EMAIL PROTECTED]
>> >
>> >
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>



Reply via email to