Hi Joachim,

phoenix is able to reload an application or to deploy a new application without restarting the full container. If you put a new sar file in the apps folder it try to deploy it.

Maybe we could add some management code to make an sar-restart without a phoenix restart but keep in mind that OSGi is not the holy grail in this: just remember that most time you install new plugins or update plugins in Eclipse you have to restart Eclipse... and eclipse is based on OSGi. This simply happens because not only the container have to support dynamic reloading, but the components must be aware of this and this need work.

Imho we'll stay with Avalon for a lot, and I bet we'll change the container before removing avalon code from our core components (maybe we'll try plexus, maybe we'll write something to wrap an avalon component as an OSGi bundle).

Furthermore I think that Avalon is a simple specification for components, while OSGi is more a specification for containers. If I understood it correctly there is nothing that stop you from writing an Avalon container that is able to reload single services/components on the fly.

Stefano

Joachim Draeger wrote:


Hi!

Having my hands in Avalon a few thoughts came to my mind concerning James future and OSGi. Well I think I have an idea now what OSGi is. But I'm still trying to find out what it DOES. :-) (I'm really a novice and may be totally wrong) AFAIK it doesn't help us with DI and IOC and configuration things. It provides a base for dynamic reconfiguration (setting values) but for James needs it seems like it would have to be much extended. (But it's even a good thing to have a standard base)

But what it is able to do is really powerful: assembling and updating bundles on the fly without any restart.

So it would be possible to change implementation of the different bundles (services) like spoolmanager, pop3 or imap server. What's even more interesting: changing implementations of different custom mailets or adding other extensions without any restart. And I guess to do so it much messes around with the class loader and such stuff.

There are many choices of choosing a container for DI/configuration stuff. And I think even Avalon is not that bad. But for that life-cycle management on the run there *only* seems to be OSGi.
Am I missing some other framework?

IMHO restarting servers sucks. ;-)

The following mail was quite informative for me:
http://www.mail-archive.com/server-dev@james.apache.org/msg06460.html

Joachim



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

Reply via email to