Thanks for the clarification, Stefano. I have another question, though. Does your response assume that the embedding application is likely to be something quite heavy (like Cocoon)? Or is an embeddable container like Fortress appropriate for use with a lightweight, servlet-based application or service? What I'm concerned about is too much weight and complexity just to embed the Xindice database. If the overhead is too high, Xindice won't be useful as a persistence mechanism for web services, for example.

Cheers,

Vanessa


On Wednesday, December 11, 2002, at 02:54 PM, Stefano Mazzocchi wrote:

Vanessa Williams wrote:
On Wednesday, December 11, 2002, at 10:55 AM, Gary Shea wrote:
Using the Avalon framework also means using an Avalon container.
I don't know much at all about Avalon, but doesn't the above statement spell bad news for those wanting to embed Xindice in their application?

Quite the opposite, in fact.

Lightweight embedding seems to be contradicted by this direction.

Avalon enforces a design pattern called 'Inversion of Control' (IoC for short). Also called the 'Hollywood principle': don't call us, we call you. :)


That means that if XIndice becomes an avalon component, it will be *piece of cake* (really, two lines of code a a few XML configurations!) to embed XIndice in any of your applications. Simply include an embeddable Avalon container and there you go.

BTW, this is exactly what Cocoon does. (Fortress is an embeddable avalon container)

But by using a standalone avalon container (Phoenix, for example), you can take the very same xindice component, write a bunch of ProtocolHandlingComponents (say one for SOAP, one for XMP-rpc, one for CORBA, you name it) and let the container glue them together.

This is *exactly* how JAMES (http://jakarta.apache.org/james/) works. (you might want to check it out, it's has a pretty impressive architecture!)

Feel free to correct me if I've misunderstood.

I hope the above clarifies.

I would strongly suggest XIndice to move the avalon way.

But being one of the original authors of that framework, I'm heavily biased so please understand that :)

--
Stefano Mazzocchi                               <[EMAIL PROTECTED]>
--------------------------------------------------------------------






Reply via email to