> -----Original Message-----
> From: Richard O. Hammer [mailto:[EMAIL PROTECTED]
> Sent: 26 June 2003 20:29
> To: James Developers List
> Subject: Re: Dynamic Reconfiguration
>
>
> Steve Brewin wrote:
> > Noel,
> >
> > A few days back we touched on the desirability of being
> able to reconfigure
> > James on the fly. ...
>
> It seems to me dynamic reconfiguration can be achieved with fairly
> run-of-the-mill Java, without needing Avalon, XML, or JMX.

Of course you are correct. Avalon, XML and JMX are all written in Java and
elements of that functionality can be duplicated in Java too, as your code
sample ably demonstrates.

There are questions of responsibilities, avoiding code duplication and
managability.

Avalon frameworks manage the core tasks and should ideally manage the
reconfiguration of those tasks. Achieving this means that all Avalon
components benefit from these advances.

The configuration file, config.xml, is essentially a persistent store for
the configuration parameters. As it is XML based we may as well go with it.
We may well want to expose the parsed parameters as Java objects through
some kind of interface. Probably James would use the Java objects as its
configuration source and perist any changes to the Java objects by updating
config.xml.

We could build a home grown interface to expose the configuration parameters
and write a user interface to manipulate them, but why bother? JMX is
specifically designed for this. There are JMX aware management tools that
can be used and JMX bridges to SNMP allowing industry standard management
tools to control JMX enabled applications. Using JMX integrates James into
the management frameworks used by medium to enterprise class organisations.
A major tick mark to have in advancing the widespread adoption of James.

So yes, we could add some levels of dynamic reconfiguration with a bespoke
approach, but in my view there is real value in leveraging industry standard
solutions.

-- Steve



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to