On 08.08.2007 11:51 Uhr, Grzegorz Kossakowski wrote:
Well in this case, IIRC, these are *not* available in Cocoon 2.1
during pipeline execution. Is there, given huge price of
implementation, a reason to make them available in Cocoon 2.2?
Ok, they are available during component's setup phase but no one can
stop component from preserving parameters for later use, right? Exactly
that happens in o.a.c.generation.AbstractGenerator.setup() method so
it's quite common practise.
It's basically price of having ObjectModel (and environment in
general) as a singleton object (actually it's scoped to the execution
of block, but it's not important here).
How parameters above relate to ObjectModel? I'm confused. Especially
if we assume they are not needed. :-?
Take a look at JXTemplateGenerator[1] and its performGeneration method:
The most interesting line is the second one. fillNewObjectModelWithFOM
method looks like this:
Now you can see that parameters are available during pipeline execution
in the ObjectModel so it's possible to have such expressions:
${cocoon.parameters.some_param}
Grek, I see the problem - and I share Vadim's concerns about the
EnvironmentChanger approach. Though I can imagine the scopes as possible
solution I think this might be topic worth to be discussed. Could you
therefore please start a new thread (the topic of this one made me
ignoring it up to now) outlining the problem, what exactly has changed
between 2.1 and 2.2 (as far as I understand it the parameters were per
component instance) and possible solutions? The implementation of this
part seem to be rather important to me.
Thanks,
Joerg