Thank you.
This should facilitate the migration of our components in 5.2.
I just created a jira for https://issues.apache.org/jira/browse/TAP5-1415

Best Regards
François

2011/1/15 Howard Lewis Ship <hls...@gmail.com>

> This was a bit of unintended consequences ... the Mixin's zone
> parameter was ignored and the Select components (new in 5.2) zone
> parameter was bound itstead.  Using zoneupdater.zone="searchZone",
> which is Tapestry's way of identifying, in the template, that its the
> zone parameter of the ZoneUpdater mixin that is bound, should fix it.
>
> 2011/1/14 françois facon <fra.fa...@gmail.com>:
> > Thank you so much Josh
> >
> > I should have read the release notes more carefully.
> > http://tapestry.apache.org/release-notes-520.html
> > more precisely
> > https://issues.apache.org/jira/browse/TAP5-138
> >
> > Regards
> > François
> >
> > 2011/1/14 Josh Canfield <joshcanfi...@gmail.com>
> >
> >>  /**
> >>     * Binding the zone parameter will cause any change of Select's
> >> value to be handled as an Ajax request that updates
> >>     * the
> >>     * indicated zone. The component will trigger the event {@link
> >> EventConstants#VALUE_CHANGED} to inform its
> >>     * container that Select's value has changed.
> >>     *
> >>     * @since 5.2.0
> >>     */
> >>    @Parameter(defaultPrefix = BindingConstants.LITERAL)
> >>    private String zone;
> >>
> >>
> >> I'd guess it's because select already has a parameter called "zone"?
> >>
> >> Josh
> >>
> >> 2011/1/13 françois facon <fra.fa...@gmail.com>:
> >> > Hi all
> >> >
> >> > Do you see any raison that could explain why tapestry
> >> > search this kind of parameter in the form?
> >> > Where is this strategie dfine?
> >> >
> >> > Regards
> >> > François
> >> >
> >> > Le 10 janvier 2011 14:09, Facon François <
> francois.fa...@atosorigin.com>
> >> a
> >> > écrit :
> >> >
> >> >>  in Jumpstart the page
> >> >>
> >>
> http://jumpstart.doublenegative.com.au/jumpstart/examples/javascript/ajaxselect1useamixin
>  that declare a parameter called zone.
> >> >>
> >> >> /** * The zone to be updated by us. */ @Parameter(defaultPrefix =
> >> >> BindingConstants.LITERAL, required = true)
> >> >>
> >> >>    private String zone;
> >> >>
> >> >> this page works fine in 5.1.0.5 but in 5.2.4<
> >> https://github.com/frafac-JumpStart/jumpstart-4.12.2/issues/#issue/34
> >an
> >> exception occured
> >> >>
> >> >> An unexpected application exception has occurred.
> >> >>
> >> >> * org.apache.tapestry5.ioc.internal.OperationException
> >> >>
> >> >>   Parameter(s) 'ZoneUpdater.zone' are required for
> >> org.apache.tapestry5.corelib.components.Select, but have not been bound.
> >> >>
> >> >>
> >> >>
> >> >>   location
> >> >>
> >> >>
> classpath:jumpstart/web/pages/examples/javascript/AJAXSelect1.tml,
> >> line 14
> >> >>
> >> >>       9 <form t:type="form" t:id="searchCriteria" style="margin: 0">
> >> >>
> >> >>       10    <t:errors/>
> >> >>
> >> >>       11
> >> >>
> >> >>       12    <t:label for="carMake"/>:
> >> >>
> >> >>       13    <select t:type="select" t:id="carMake" t:model="carMakes"
> >> t:blankLabel="Choose..."
> >> >>
> >> >>       14    t:mixins="zoneUpdater" t:clientEvent="change"
> >> t:event="changeOfCarMake" t:zone="searchZone"></select>
> >> >>
> >> >>       15
> >> >>
> >> >>       16    <t:label for="carModel"/>:
> >> >>
> >> >>       17    <select t:type="select" t:id="carModel"
> t:model="carModels"
> >> t:blankLabel="Choose..."
> >> >>
> >> >>       18    t:mixins="zoneUpdater" t:clientEvent="change"
> >> t:event="changeOfCarModel" t:zone="searchZone"></select>
> >> >>
> >> >>       19
> >> >>
> >> >>   trace
> >> >>
> >> >>           o Constructing instance of page class
> >> jumpstart.web.pages.examples.javascript.AJAXSelect1
> >> >>
> >> >>
> >> >>
> >> >> * org.apache.tapestry5.ioc.internal.util.TapestryException
> >> >>
> >> >>   Parameter(s) 'ZoneUpdater.zone' are required for
> >> org.apache.tapestry5.corelib.components.Select, but have not been bound.
> >> >>
> >> >>
> >> >>
> >> >>   location
> >> >>
> >> >>
> classpath:jumpstart/web/pages/examples/javascript/AJAXSelect1.tml,
> >> line 14
> >> >>
> >> >>   Hide uninteresting stack framesStack trace
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.verifyRequiredParametersAreBound(ComponentPageElementImpl.java:1195)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.structure.ComponentPageElementImpl.containingPageDidLoad(ComponentPageElementImpl.java:830)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.structure.PageImpl.loaded(PageImpl.java:171)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.pageload.PageLoaderImpl$3.invoke(PageLoaderImpl.java:190)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.pageload.PageLoaderImpl$3.invoke(PageLoaderImpl.java:174)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.pageload.PageLoaderImpl.loadPage(PageLoaderImpl.java:173)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.PageSourceImpl.getPage(PageSourceImpl.java:81)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.NonPoolingRequestPageCacheImpl.get(NonPoolingRequestPageCacheImpl.java:74)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.ComponentSourceImpl.getPage(ComponentSourceImpl.java:83)
> >> >>
> >> >>           o
> >>
> jumpstart.web.services.PageProtectionFilter.isAuthorisedToPage(PageProtectionFilter.java:89)
> >> >>
> >> >>           o
> >>
> jumpstart.web.services.PageProtectionFilter.handlePageRender(PageProtectionFilter.java:62)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:321)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:984)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:974)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
> >> >>
> >> >>           o
> >>
> jumpstart.web.services.AssetProtectionFilter.service(AssetProtectionFilter.java:53)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:272)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
> >> >>
> >> >>           o
> >>
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:928)
> >> >>
> >> >>           o
> >> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
> >> >>
> >> >> If I change the parameter name to zoneName, the binding works fine.
> >> >>
> >> >> When debugging
> >> >> public void bindParameter(String parameterName, Binding binding)
> >> >>
> >> >> {
> >> >>
> >> >>     if (bindings == null)
> >> >>
> >> >>         bindings = CollectionFactory.newCaseInsensitiveMap();
> >> >>
> >> >>
> >> >>
> >> >>     bindings.put(parameterName, binding);
> >> >>
> >> >> }
> >> >>
> >> >> in see the value LiteralBinding[zone: searchZone] for parameterName
> zone
> >> >>
> >> >> the exception occured when isBinding is looking for parameter zone in
> >> >> component searchCriteria
> >> >>
> >> >> which is a form
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >> François Facon
> >> >> Responsable Equipe Web Platform
> >> >>
> >> >> O&D - Technical Direction <http://web-asset/0> - Atos Worldline
> >> >>
> >> >> We love Tapestry.
> >> >> http://www.atosworldline.com/
> >> >> Atos Worldline is an Atos Origin company: www.atosorigin.com
> >> >>
> >> >>
> >> >>
> >> >> [image: 132310]
> >> >>
> >> >>
> >> >>
> >> >> ------------------------------
> >> >>
> >> >> Ce message et les pièces jointes sont confidentiels et réservés à
> >> l'usage
> >> >> exclusif de ses destinataires. Il peut également être protégé par le
> >> secret
> >> >> professionnel. Si vous recevez ce message par erreur, merci d'en
> avertir
> >> >> immédiatement l'expéditeur et de le détruire. L'intégrité du message
> ne
> >> >> pouvant être assurée sur Internet, la responsabilité du groupe Atos
> >> Origin
> >> >> ne pourra être recherchée quant au contenu de ce message. Bien que
> les
> >> >> meilleurs efforts soient faits pour maintenir cette transmission
> exempte
> >> de
> >> >> tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa
> >> >> responsabilité ne saurait être recherchée pour tout dommage résultant
> >> d'un
> >> >> virus transmis.
> >> >>
> >> >> This e-mail and the documents attached are confidential and intended
> >> solely
> >> >> for the addressee; it may also be privileged. If you receive this
> e-mail
> >> in
> >> >> error, please notify the sender immediately and destroy it. As its
> >> integrity
> >> >> cannot be secured on the Internet, the Atos Origin group liability
> >> cannot be
> >> >> triggered for the message content. Although the sender endeavours to
> >> >> maintain a computer virus-free network, the sender does not warrant
> that
> >> >> this transmission is virus-free and will not be liable for any
> damages
> >> >> resulting from any virus transmitted.
> >> >>
> >> >
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> >> For additional commands, e-mail: users-h...@tapestry.apache.org
> >>
> >>
> >
>
>
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>

Reply via email to