Thanks, that should be usefull, but doesn't help on the issue that to get an
instance of a component it must be injected somewhere, and that somewhere's
template must have every component that eventually you will use (because I
can't inject a component in a class whose template doesn't have it), so it
will always load every posible component...

And this is one main problem: i wanna use an injected component that it's
not on any template on a explicit way. Is there any way to get an instance
of a component that is not present on any template?

By the way, there says:
"The component may have been injected via the Component annotation, or may
have been passed to the as a parameter".
I don't know how to pass a Component as a parameter in a phase render
method, I tried:

Object beginRender(MyComponent myComponent) { ... }

but myComponent variable is always null there...

What do you think?

Regards, 

John


Michael Courcy wrote:
> 
> Taken from
> http://tapestry.apache.org/tapestry5/tapestry-core/guide/rendering.html
> 
> 
>     Rendering Components
> 
> Instead of returning true or false, a render phase method may return a 
> component. The component may have been injected via the Component 
> <http://tapestry.apache.org/tapestry5/tapestry-core/guide/.../apidocs/org/apache/tapestry/annotations/Component.html>
>  
> annotation, or may have been passed to the as a parameter.
> 
> In any case, returning a component will queue that component to be 
> rendered *before* the active component continues rendering.
> 
> The component to render may even be from a completely different page of 
> the application.
> 
> Recursive rendering of components is not allowed.
> 
> This technique allows the rendering of Tapestry pages to be /highly/ 
> dynamic.
> 
> Returning a component instance does *not* short circuit method 
> invocation, the way returning a boolean would. It is possible that 
> multiple methods may return components (this is not advised -- insanity 
> may ensue).
> 
> 
> 
> johnowenatala a écrit :
>> Hi, i have a place in a page where i wanna put a component, but which
>> component is desided in runtime (can be from configuration or from
>> request
>> parameters).
>> I tried to do this by putting a delegate component, but i couldn't inject
>> in
>> runtime an unknowed component in compilation time.
>> What do you think i can do? Is this possible?
>>   
> 
> 
> -- 
> Michael Courcy
> http://courcy.blogspot.com
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/-T5--Choosing-components-at-runtime-tp14933806p14957788.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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

Reply via email to