Hi,

    We are evaluating Tapestry for a couple of months and are very
interested in using it in a huge project that will have a minimum of 30k
users when it goes up. Since T5 is not yet production ready we are seeking
for advice to know how scalable Tapestry forms can be.

We need a multipage form wizard that populates part of a requestObject in
each page and finally persists it to a database. The user should be able to
fill the form in parts whenever he feels like - page 1,2 today and page 3,4
next week or something like that.

Here are the options with T5 (from what we could dig up) :

   1. have a gaint ASO Request object for each user, but that is not at all
   scalable.
   2. Pass on the Request object between the Pages using

Page1.java
Object onSubmitFromForm()
{
nextPage.setRequestObject(this.requestObject());
return nextPage;
}

Page2.java

 object onPassivate(Object RequestObject)
{
return RequestObject
}

void onActivate(Object requestObject)
{
this.requestObject = requestObject;
}

It looks like I cannot pass my custom Classes (requestObjects) this way.
Are only the built-in datatype classes allowed for OnActivate() and
OnPassivate() e.g. String or Long ?


     3. Persist each part of the form in each page (database or some ASO
like Map(id, requestObject) ) and pass on the id. That way we can retrieve
the previously entered values onPrev() and onSubmit()

     4. @Persist all the form feilds between requests?

We dont know if any of these would work for us coz we are looking at min 10k
concurrent users for this form wizard when it goes up. Are we missing some
other approach. Please advise. Thanks!


-- 
Cheers,
John

Reply via email to