I'm really disappointed, but i going to give up as it seems impossible to make it work using Tapestry "mechanics".
I think that we have to manage everything using js : input validation / ajax form submission / zone update. For information, my goal was to "simulate" a navigation using a zone wrapped in a dialog component. 2012/10/22 Thomas Cucchietti <thomas.cucchie...@gmail.com> > Still impossible to manage to have this zone update using the form inside > the zone. > > From the browser console, I can see that the content of the partial render > response contains what is needed for the zone to be updated : > > (...) > "inits" : [ { "formEventManager" : [ { "formId" : > "manageForm_13a8936acde", "validate" : { "submit" : true, > "blur" : true } } ] }, { > "linkZone" : [ { "linkId" : "manageForm_13a8936acde", > "url" : "/my/page/url.manageform", "zoneId" : "zoneToRefresh" > } ], > (...) > > But this doesn't seem to be used. > > > 2012/10/22 Thomas Cucchietti <thomas.cucchie...@gmail.com> > >> Hello Thiago, >> >> I did it by setting explicitely the "id" (on top of the "t:id") parameter >> of the form to "manageForm", but it keeps adding some random value at the >> end of this (for example "manageForm_13a88baf8ea"). >> >> Something is missing for the clientid to be static? >> >> >> 2012/10/22 Thiago H de Paula Figueiredo <thiag...@gmail.com> >> >>> Or provide explicit static ids instead of letting them be autogenerated >>> by Tapestry. >>> >>> >>> On Mon, 22 Oct 2012 11:45:18 -0200, Thomas Cucchietti < >>> thomas.cucchie...@gmail.com> wrote: >>> >>> I keep on trying a way to get this working. >>>> >>>> In a previous discussion (see the end of Christian's answer >>>> here<http://markmail.org/**thread/w6s3jtmwwfw6vfnx#query:** >>>> +page:1+mid:jbwboaocfw4lkjqj+**state:results<http://markmail.org/thread/w6s3jtmwwfw6vfnx#query:+page:1+mid:jbwboaocfw4lkjqj+state:results> >>>> >), >>>> >>>> a workaround for the null id could be the use of a HeartBeat to defer >>>> the >>>> evaluation of the client id value. >>>> >>>> had someone already given it a go? >>>> >>>> 2012/10/22 Thomas Cucchietti <thomas.cucchie...@gmail.com> >>>> >>>> I tried to manually link the zone to the form, but with no success. >>>>> >>>>> @BeginRender >>>>> void fixZoneAjaxSupport() { >>>>> Link link = resources.createEventLink("**manualLinkToZone", >>>>> null); >>>>> clientBehaviorSupport.**linkZone("manageForm", >>>>> "zoneToRefresh", >>>>> link); >>>>> } >>>>> >>>>> >>>>> The "linkzone" in Tapestry.init() is updated and contains : >>>>> >>>>> { >>>>> "linkId" : "manageForm", >>>>> "url" : "/my/url/to/page:**manualLinkToZone", >>>>> "zoneId" : "zoneToRefresh" >>>>> } >>>>> >>>>> However, as the manageForm has random generated number added to its >>>>> client >>>>> id, it won't be taken into account... >>>>> >>>>> Even if I inject the manageForm into my page, as it isn't initially >>>>> present in the page but only after a first zone update, it's null and I >>>>> have no way to know the exact client id of my form. >>>>> >>>>> After some additional search (thanks markmail!), it seems that this >>>>> clientId will always be uniquefied as the form is contained in the >>>>> zone. >>>>> >>>>> Anybody has a clue on my first mail? or at least on the workaround I'm >>>>> trying to find? >>>>> >>>>> Thomas >>>>> >>>>> >>>>> 2012/10/22 Thomas Cucchietti <thomas.cucchie...@gmail.com> >>>>> >>>>> Hello, >>>>>> >>>>>> Is the following behavior intended, as it may be a bug ? >>>>>> >>>>>> With this structure : >>>>>> >>>>>> <t:zone t:id="zoneToRefresh" id="zoneToRefresh"> >>>>>> <t:delegate to="activeBlock"/> >>>>>> </t:zone> >>>>>> >>>>>> <t:block t:id="empty"> >>>>>> <!-- empty block --> >>>>>> </t:block> >>>>>> >>>>>> <t:block t:id="manageBlock"> >>>>>> <t:form t:id="manageForm" zone="zoneToRefresh"> >>>>>> <t:radiogroup t:value="manage"> >>>>>> <input type="radio" t:type="radio" t:value="true"/> >>>>>> Yes >>>>>> <input type="radio" t:type="radio" t:value="false"/> >>>>>> No >>>>>> </t:radiogroup> >>>>>> >>>>>> <t:submit value="Submit form"/> >>>>>> </t:form> >>>>>> </t:block> >>>>>> >>>>>> (I don't have included the button that refresh the zone the first >>>>>> time) >>>>>> >>>>>> The method getActiveBlock() return the emptyBlock when the page >>>>>> initially >>>>>> loads, then it returns the manageBlock once the refresh button is hit. >>>>>> >>>>>> The problem is that the form contained in the manageBlock doesn't >>>>>> refresh >>>>>> the zone in Ajax, and reload the whole page instead. >>>>>> >>>>>> From what I've searched, it seems that, when the manage block is >>>>>> rendered, the "zone" parameter of the manageForm is null (see line >>>>>> 356 of >>>>>> Form.class, in beginRender method) whereas it should be valued with >>>>>> the >>>>>> zoneToRefresh. >>>>>> >>>>>> I have already encoutered similar errors : the forms and actionlinks >>>>>> that >>>>>> should fire ajax reloads, fire page reload instead when they have not >>>>>> been >>>>>> rendered at the initial page loading. >>>>>> >>>>>> Regards, >>>>>> Thomas >>>>>> >>>>>> >>>>> >>>>> >>> >>> -- >>> Thiago H. de Paula Figueiredo >>> >>> ------------------------------**------------------------------** >>> --------- >>> To unsubscribe, e-mail: >>> users-unsubscribe@tapestry.**apache.org<users-unsubscr...@tapestry.apache.org> >>> For additional commands, e-mail: users-h...@tapestry.apache.org >>> >>> >> >