Hi! I'm trying to edit a set of values, and it works fine if I use @Persist on the data I'm trying to edit. I would like to avoid @Persist as much as I can as it bloats the session. Therefore I would like some guidance on how to do it without @Persist I would like to point out that I have tried @Persist("client"), it didn't work, the values where reverted the second submit, try it yourselves. Another thing I considered was using the @Hidden component, but it behaved like the @Persist("client") (reverted the values on the second submit)
Please help! This is what I've got: /*****************************Home.java****************************************************/ public abstract class Home extends BasePage { @InjectPage("AnotherPage") public abstract AnotherPage getAnotherPage(); @Bean public abstract SomeData getSomeData(); public abstract int getSize(); public IPage doSubmit() { SomeData data = getSomeData(); data.setValues(new TreeSet<ValuePair>()); for(int i = 0; i < getSize(); i++) { data.getValues().add(new ValuePair(i + ": ", "" + (int)(Math.random()*100))); } AnotherPage p = getAnotherPage(); p.setSomeData(data); return p; } } /*****************************Home.html****************************************************/ <html jwcid="@Shell" title="Tapestry Sandbox"> <body jwcid="@Body" > <form jwcid="[EMAIL PROTECTED]"> <label for="someData">name</label><input jwcid="[EMAIL PROTECTED]" value="ognl:someData.name" /><br /> <label for="size">size</label><input jwcid="[EMAIL PROTECTED]" value="ognl:size" translator="translator:number" validators="validators:required" /> <input jwcid="[EMAIL PROTECTED]" value="literal:submit" listener="listener:doSubmit" /> </form> </body> </html> /*****************************AnotherPage.java****************************************************/ public abstract class AnotherPage extends BasePage { public abstract ValuePair getCurrValue(); @Persist public abstract void setSomeData(SomeData data); public abstract SomeData getSomeData(); public void doSubmitResult() { System.out.println("name: " + getSomeData().getName()); for(ValuePair currValue : getSomeData().getValues()) { System.out.println(currValue.getName() + ": " + currValue.getValue()); } } } /*****************************AnotherPage.html****************************************************/ <html jwcid="@Shell" title="Tapestry Sandbox - Another Page"> <body jwcid="@Body" > <b><span jwcid="@Insert" value="ognl:someData.name" /></b> <form jwcid="[EMAIL PROTECTED]"> <span jwcid="[EMAIL PROTECTED]" source="ognl:someData.values" value="ognl:currValue"> <span jwcid="@Insert" value="ognl:currValue.name" /><span jwcid="[EMAIL PROTECTED]" value="ognl:currValue.value" /><br /> </span> <input jwcid="[EMAIL PROTECTED]" value="literal:submit result" listener="listener:doSubmitResult" /> </form> <a jwcid="[EMAIL PROTECTED]" value="literal:restart" page="Home">home</a> </body> </html> /******************************************************************************************************/ Thanks for taking your time, /ted --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]