I'm not sure. Something sounds wrong. How does the work when not using ajax?
I mean, are you sure you are hitting problems related to dynamic behavior or
more with dealing with normal api semantics?

The debug should explicitly show you the content it is updating a component
with. If it has debug statements showing the content then it could be your
listener method doing something funky.

Mark Reynolds has become my favorite bug reporter of all time. His issues
usually come with completely self contained projects that I can invoke "mvn
jetty:run" on to see all the gory bug details (documented examples and all)
for myself. One such issue was unrelated to what you are experiencing but
does include a good example of doing exactly what you are trying to do.
Perhaps it will be of some help.

http://issues.apache.org/jira/browse/TAPESTRY-1072

Let me know if the documentation hasn't made something clear after you try
it out and I can attempt updating with whatever relevant information there
is.

On 9/13/06, Christian Dutaret <[EMAIL PROTECTED]> wrote:

debug statement says it has updated the content of the component, but the
options are still the old ones.
I also ran the app on debug, and set a breakpoint within the
renderComponent() method in the PropertySelection class. It seems it still
grabs the old value of the model, even after I updated it.
I also tried with other bindings, such as "disabled", and it doesn't work
either. The only binding I can see updated is the "value" binding.
Also tried with a surrounding div, still no success.

Is there a chance this would work better with the Select/Option
components?
Didn't try those (I never used them actually).
My app really needs to update the full content of a dropdown list
depending
on some other selections. I used to achieve this with XTile components,
and
that worked like a charm, but required quite a lot of javascript plumbing.

2006/9/13, Jesse Kuhnert <[EMAIL PROTECTED]>:
>
> It should work, I ~think~...What kind of response do you get from the
> server
> ? (via the dojo debug statements or FireBug ? )
>
> On 9/13/06, Christian Dutaret <[EMAIL PROTECTED]> wrote:
> >
> > Hi all,
> >
> > I am trying to change the content of a dropdown list when some event
> > occur.
> > I am using PropertySelection to render the dropdown list. I assumed
that
> > my
> > listener could change the component's PropertySelectionModel, and that
> > updateComponent would render the updated content, but this doesn't
work.
> > Shouldn't the "model" binding be re-rendered when updateComponent is
> > called,
> > or am i doing something wrong?
> > I am using the latest 4.1.1 snapshot.
> >
> > Thx for any hint.
> >
> > My page class:
> >
> > public abstract void setModelB(IPropertySelectionModel value);
> >
> > @EventListener(targets="A", events="onchange", submitForm="form")
> > public void changeA(IRequestCycle cycle) {
> >     this.setModelB(buildNewModelFromDb(a));
> >     cycle.getResponseBuilder().updateComponent("B");
> > }
> >
> > My HTML template:
> >
> > <span jwcid="@Shell" title="Tapestry 4.1 test"
browserLogLevel="DEBUG">
> > <body jwcid="@Body">
> > <form jwcid="[EMAIL PROTECTED]" success="listener:doNothing">
> > <span jwcid="[EMAIL PROTECTED]" model="ognl:modelA" value="ognl:a"/>
> > <span jwcid="[EMAIL PROTECTED]" model="ognl:modelB" value="ognl:b"/>
> > <input type="submit" value="Go"/>
> > </form>
> > </body>
> > </span>
> >
> > Ch.
> >
> >
>
>
> --
> Jesse Kuhnert
> Tapestry/Dojo/(and a dash of TestNG), team member/developer
>
> Open source based consulting work centered around
> dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com
>
>




--
Jesse Kuhnert
Tapestry/Dojo/(and a dash of TestNG), team member/developer

Open source based consulting work centered around
dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com

Reply via email to