I have 2 pages. A Home.html and a Result.html. I have 1 component (SearchComponent) which is to be SHARED across both pages. The component is a simple textfield.
When submitting a value in the first page, it then goes to the result page. However the component don't remember it's value the first time. On subsequent submits it remembers it (probably because you stay on the reult page behind the scenes). Does anyone have any idea what to do? Much appreciated. Here is the simple code: Home.java ------------------- package uk.co.gd.dao; import org.apache.tapestry.html.BasePage; public abstract class Home extends BasePage { } Home.page ------------------- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd"> <page-specification class="uk.co.gd.dao.Home"> <component id="searchComponent" type="SearchComponent" /> </page-specification> Home.html -------------------- <html> <body> <span jwcid="searchComponent" /> </body> </html> Result.java -------------------- package uk.co.gd.dao; import org.apache.tapestry.html.BasePage; public abstract class Result extends BasePage { public abstract void setSearchText(String searchText); } Result.page ---------------------- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd"> <page-specification class="uk.co.gd.dao.Result"> <component id="searchComponent" type="SearchComponent" /> </page-specification> Result.html -------------------- <html> <body> you entered: <span jwcid="searchComponent" /> </body> </html> SearchComponent.java --------------------------------- package uk.co.gd.dao; import org.apache.tapestry.BaseComponent; import org.apache.tapestry.IPage; import org.apache.tapestry.IRequestCycle; import org.apache.tapestry.annotations.InitialValue; import org.apache.tapestry.annotations.InjectPage; public abstract class SearchComponent extends BaseComponent { @InjectPage("Result") public abstract Result getResultPage(); @InitialValue("literal:") public abstract String getSearchText(); public IPage onOk(IRequestCycle cycle) { System.out.println(new java.util.Date() + ": over here SearchComponent: " + getSearchText()); if (cycle.isRewinding()) System.out.println(new java.util.Date() + ": over here SearchComponent: rewinding"); else System.out.println(new java.util.Date() + ": over here SearchComponent: not rewinding"); Result resultPage = getResultPage(); resultPage.setSearchText(getSearchText()); return resultPage; } } SearchComponent.jwc -------------------------------- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE component-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd"> <component-specification class="uk.co.gd.dao.SearchComponent"> <component id="searchForm" type="Form"> <binding name="listener" value="listener:onOk" /> </component> <component id="searchText" type="TextField"> <binding name="value" value="searchText" /> </component> </component-specification> SearchComponent.html -------------------------------- <html> <body jwcid="$content$"> <form jwcid="searchForm" style="display: inline"> <input type="text" size="20" jwcid="searchText" /> <input type="submit" style="background-color: #ebebeb" value="Go!" /> </form> </body> </html> -- View this message in context: http://www.nabble.com/Component-won%27t-remember-value-tf2547494.html#a7099616 Sent from the Tapestry - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]