Bart Molenkamp wrote:
I understand that both the configuration and the marker interface
options are working, great. But I'm still not satisfied by your answer,
sorry. My points:

1. I don't see that much difference between a developer and a
configuration writer.

That's because you are a developer :-)

Knowing the configuration settings of a component
can also require (deep) knowledge about the implementation. And,
configuration writers don't need to write the configuration from
scratch, the already configured defaults are sufficient.

The configuration settings require understanding of the implementation if there is no docs for it. Many components do have some docs, and hopefully more and more will have in the future.

2. To configure a component, knowledge about it is required anyways.
Looking at the configuration of CForms for example, there is quite some
configuration, but not much for a regular user to change (all those
builders etc - which I think is great that it is configurable). For
regular Cocoon users, I think the default configuration that comes with
a Cocoon build is sufficient in many, many cases (again, I don't think
users write configuration files from scratch).

Most components have sensible builtin defaults, meaning they often can work without specific configuration. This is different from Spring where you have to describe everything. Cultural difference that explains both why Avalon is intrusive and why Cocoon components should "just work" except when you want to give them some specific instructions through their configuration.

3. There is a dependency on Avalon, a project that is closed, and this
project wanting to move away from it (at least that is my impression).
This doesn't encourage me to use the Avalon interfaces, it rather
"scares" me to use them. Configuration gives me much more feeling that
I'm not tied in to Avalon, and can migrate to another container with
less effort.

False impression! The preload="true" thing is very specific to the ECM+, Cocoon's own implementation of Avalon container interfaces. You are very unlikely to see it on any other container!!!

4. The way I learned to write components is by looking at the sources of
Cocoon. So shouldn't the code show how it is supposed to be (for new
and/or recently updated components), instead of how it always was?

Again, many people use Cocoon without having ever opened any one of its source files. And these are the people that will be the less likely to find that they forgot or accidentally removed a preload="true" somewhere...

Sylvain

--
Sylvain Wallez                        Anyware Technologies
http://people.apache.org/~sylvain     http://www.anyware-tech.com
Apache Software Foundation Member     Research & Technology Director

Reply via email to