What's "t:ac"? In the POST's Form Data, "t:ac" is the key of the field that carries the page's activation context.
On 3 Jul 2014, at 12:41 pm, Geoff Callender <geoff.callender.jumpst...@gmail.com> wrote: > Not a bug. Form bubbles up its context in the PREPARE_FOR_SUBMIT event. > Here's a typical way to deal with it: > > void onPrepareForSubmit(Long id) { > this.id = id; > entity = retrieveFromDatabase(id); > } > > What should you pass in the context? At a minimum I'd recommend passing all > the parameters of its enclosing component. Then, in onPrepareForSubmit(...) > you can restore the component's parameter values (like we restored this.id > above) before proceeding. In this way a component can behave independently > rather than depending on its page. When components get deeply nested then > this is essential. > > > If you want the page's onActivate(Long id) to be invoked, then you'll need > the *page's* context to include id, which you achieve by doing this in the > page: > > Long onPassivate() { > return id; > } > > I'm guessing your page doesn't do that. Before clicking submit, the page URL > would look like this... > > http://localhost:8080/application/page/12345 > > ...and, on submit, the Form Data would include: > > t:ac:12345 > > Geoff > > > On 3 Jul 2014, at 11:59 am, Ilya Obshadko <ilya.obsha...@gmail.com> wrote: > >> I'm not sure if this is a bug or not. >> >> Here's a scenario: >> >> Page.java >> >> public class Page { >> @Property >> private Entity entity; >> >> void onActivate ( Long id ) { >> entity = retrieveFromDatabase ( id ); >> } >> >> } >> >> Page.tml: >> >> <t:mycomponent entity="entity"/> >> >> MyComponent.tml: >> >> <t:form p:context="entity.id"> >> ... >> </t:form> >> >> >> AJAX is NOT used. If I get it right, form context must be passed to >> enclosing page during form submission. However it doesn't work and >> appropriate onActivate method is never called, although submission URL >> looks just like expected: >> http://localhost:8080/application/page.mycomponent.form/12345 >> >> Am I missing something here? I'm using 5.4-beta6 >> >> >> -- >> Ilya Obshadko >