Hello Alex,

About the flurry of my own responses, sorry if I seemed impatient : my only
concern was to give an update of what I found as it could be useful for
future searches. And I don't give up easily ;)

However, next time, I'll try to less "spam" the mailing list.

Thomas

2012/10/24 Alex Kotchnev <akoch...@gmail.com>

> Thomas - indeed, the issue w/ tap5-jquery not evaluating the init was a
> pretty gnarly one. I ran into it myself, albeit in a somewhat different
> context (and unfortunately it didn't ring a bell when I looked at your
> questions).
>
> Just as a side note, seeing the flurry of your own responses, sometimes it
> take a little bit of time for the mailing list to respond to your concerns,
> especially if the issue is not trivial. Thus, it helps to not give up too
> quickly and be patient w/ the list.
>
> Cheers,
>
> Alex K
>
> On Wed, Oct 24, 2012 at 3:31 AM, Thomas Cucchietti <
> thomas.cucchie...@gmail.com> wrote:
>
> > For information, with the help of people from the tapestry-jquery module,
> > the bug has been found.
> >
> > It was located in the addScripts method of tapestry-jquery.js (v3.3.0) :
> > the server reply "inits" wasn't executed.
> >
> > To resolve it, you can use tapestry-jquery v3.3.3.
> >
> > 2012/10/23 Thomas Cucchietti <thomas.cucchie...@gmail.com>
> >
> > > 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
> > >>>>
> > >>>>
> > >>>
> > >>
> > >
> >
>

Reply via email to