Perhaps you could create all the components on the screen and place them 
in different <div> sections.  You could then hide the ones you don't want 
to see.  I frequently do this.  It means more processing on the submit, 
but that's ok by me.

If you want to limit which components you see (with a post back to the 
server) you could use RenderBlock to present custom components for each 
submit.

  - Mike




"James Sherwood" <[EMAIL PROTECTED]> 
06/13/2006 06:08 PM
Please respond to
"Tapestry users" <users@tapestry.apache.org>


To
"Tapestry users" <users@tapestry.apache.org>
cc

Subject
Re: Can dynamic tapestry be done?






Thanks for the feedback,

This does, however, pose a problem for me.

I am building a site and I wish to make it diverse enough to change its 
appearance with the 'flick of a switch'.

Is is possible then to create several border components and call a 
different 
one according to which site layout you have designated without using the 
idea of:

<jwc id="checklayout1">
<jwc id="insertBorderComponent1"/>
</jwc>

but instead, using the idea:

<jwc id="insertBorder"/>

where the insertBorder component used a different component dependant on 
the 
site layout?

Thanks,
James


----- Original Message ----- 
From: "Howard Lewis Ship" <[EMAIL PROTECTED]>
To: "Tapestry users" <users@tapestry.apache.org>
Sent: Tuesday, June 13, 2006 5:39 PM
Subject: Re: Can dynamic tapestry be done?


> This goes against the grain of Tapestry.
>
> Here's some copy from the new Tapestry 5 web site (not yet available) 
that
> conveys the reasoning behind this:
>
> Tapestry is designed to be extremely scalable in several dimensions:
>
>   - Tapestry applications may contain many pages and many custom
>   components.
>   - Tapestry applications may contain very complex functionality.
>   - Tapestry applications may be created by large, diverse teams.
>   - Tapestry applications can service large numbers of concurrent users.
>
> One core architecture decision in Tapestry exists to service many of the
> above goals (and others that are harder to describe). *Static Structure,
> Dynamic Behavior*
>
> In Tapestry, the structure of any particular page is *static*. This is
> necessary for several reasons, most importantly because Tapestry pages 
are 
> *
> pooled*. Creating and Tapestry page is an involved process, because the 
> page
> object is simply the root of a large tree of other objects including 
user
> provided components, many kinds of structural objects, template objects, 

> and
> others. Creating a new page instance for each request is simply not *
> scalable*.
>
> Instead, Tapestry *pools* pages. Once created, a page instance will be
> stored in a pool for that particular type of page, and reused in later
> requests. An incoming request, the result of a user clicking a link or
> submitting a form, will be processed by *some* server within a cluster, 
> and
> will use *some* page instance within the page pool. Because page 
instances
> are static and uniform across instances and servers, Tapestry can use 
any
> available page instance, or create a new one as needed.
>
> Tapestry does not need to store page instances inside the HttpSession. 
At
> most, it stores a smattering of *persistent properties* of the page in 
the
> session, but not the entire page instance. This lean use of the 
> HttpSession
> is key to Tapestry's very high scalability, especially in a clustered
> configuration.
>
> In some Tapestry-like frameworks, such as Faces and Wicket, the page
> structure is more dynamic, at the cost of storing much, much more data 
in
> the HttpSession.
>
> This static structure is not so limiting as you might think. With 
> different
> kinds of conditional and looping components, and the ability to "jump 
out 
> of
> the flow" and render components in an arbitrary order, you will not find
> Tapestry to be rigid ... anything but!
>
>
>
>
> On 6/13/06, James Sherwood <[EMAIL PROTECTED]> wrote:
>>
>> This is the situation:
>>
>> I would like to create a page in such a way that the jwcid's in the 
html
>> are
>> standard but I can produce the html any way I wish.
>>
>> To do this there would have to be a way to pass tapestry the html of a
>> page
>> from a database for instance.
>>
>> Something to the effect of a <jwc id="insertTapestry"/> in a page which
>> inserts the html and tapestry tags but the html tags and tapestry tags
>> that
>> are inserted are still rendered by the engine.
>>
>> Is this possible?
>>
>> Thanks,
>> James
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
> -- 
> Howard M. Lewis Ship
> Independent J2EE / Open-Source Java Consultant
> Creator and PMC Chair, Apache Tapestry
> Creator, Jakarta HiveMind
>
> Professional Tapestry training, mentoring, support
> and project work.  http://howardlewisship.com
> 


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


Reply via email to