Thanks.

> You can't choose your components at runtime. Although, if you have a
> set of known components that you want to choose from you can put your
> components in <t:block> and load the block by id.


If there are too many known components, I don't want to put so many 
components in on page.

I have another thought. Can I create a new component, and based on a String
parameter, render this component as another known component. 
(Like a page forward to another page).

or, is there a way to get an instance of a Component using java code at runtime.


On Jun 16, 2011, at 1:26 AM, Josh Canfield wrote:

>> I want to use a component in a page, but i don't know which to use,
>> I only know a String at Runtime, How can I do this.
> 
> http://tapestry.apache.org/principles.html
> 
> Principle 1 – Static Structure, Dynamic Behavior
> 
> You can't choose your components at runtime. Although, if you have a
> set of known components that you want to choose from you can put your
> components in <t:block> and load the block by id.
> 
> 
> <t:delegate to="namedBlock"/><!-- where namedBlock is a page property
> which returns the block based on your runtime value -->
> 
> <t:block t:id="circle"><t:drawcircle/></t:block>
> <t:block t:id="square"><t:drawsquare/></t:block>
> <t:block t:id="triangle"><t:drawtriangle/></t:block>
> 
> 
> Josh
> 
> On Wed, Jun 15, 2011 at 10:20 AM, Bo Gao <eli...@gmail.com> wrote:
>> I want to use a component in a page, but i don't know which to use,
>> I only know a String at Runtime, How can I do this.
>> 
>> I add <div t:type="component1"></div>to a .tml file, "component1" is the 
>> Component Class name.
>> I try to add a method getComponentName() to the java file, then i can 
>> control which
>> component to use, but i failed.
>> 
>> Is their another way to do this?
>> 
>> Thanks.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
> 

--
Bo Gao
eli...@gmail.com





---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to