Just some questions... How does DataView's dataProvider get's affected
by the code on onUpdate? Does  getDataProvider(params); recreate it?
Then the instance stored on DataView is different from the one you
retrieve with getDataProvider(params)? Why not implement a
SortableDataProvider, keep a local copy of it, pass it to DataView and
update it's sort state on the onUpdate method?

Ernesto

On Thu, Apr 29, 2010 at 1:51 PM, Robert Kimotho <kimot...@gmail.com> wrote:
> I have experienced the same issue, the only difference is that
> when there was no data in the database the dropdown crashed and could
> not display any
> values, I'm also using AjaxFormComponentUpdatingBehavior onchange
>
> Here is a section of my code:-
>
> final WebMarkupContainer commentListContainer = new
> WebMarkupContainer("commentListContainer");
>        commentListContainer.setOutputMarkupId(true);
>
> final DropDownChoice<String> cats = new DropDownChoice<String>("cat_select",
> new PropertyModel<String>(new VComment(), "category")
> , category.getCategoriesByType("vcomment"), new ChoiceRenderer<String>());
> cats.setOutputMarkupId(true);
> add(cats);
>
> final AbstractDataProvider<VComment> dataProvider = (VCommentDataProvider)
> getDataProvider(params);
>
> final DataView<VComment> commentView = new DataView<VComment>("commentList",
> dataProvider, 10) {
>
> @Override
> protected void populateItem(Item<VComment> item) {.....}
>  }
> commentListContainer.add(commentView);
> ........
> cats.add(new AjaxFormComponentUpdatingBehavior("onchange") {
> @Override
> protected void onUpdate(AjaxRequestTarget target) {
> params.put("cat", cats.getModelObject());
> getDataProvider(params);
> target.addComponent(commentListContainer);
> target.addComponent(cats);
> }
> });
>
> Kimotho.
>
> On Thu, Apr 29, 2010 at 12:42 PM, Ernesto Reinaldo Barreiro <
> reier...@gmail.com> wrote:
>> Can you post the code that was failing somewhere? Maybe someone can
>> spot what is happening;-)
>>
>> Best,
>>
>> Ernesto
>>
>> On Thu, Apr 29, 2010 at 11:21 AM, Reinout van Schouwen
>> <rein...@gmail.com> wrote:
>>>
>>> Replying to myself.
>>>
>>> I've worked around the problem by not using the AJAX method to update my
>>> DataView but by reloading the page with different pageparameters after a
>>> selection instead. Far from ideal, but the best I could come up with.
>>>
>>> Alternative solutions still welcome!
>>>
>>> Op maandag 26-04-2010 om 14:20 uur [tijdzone +0200], schreef Reinout van
>>> Schouwen:
>>>> I'm having trouble figuring out the following problem.
>>>>
>>>> I have a div (coupled to a WebMarkupContainer) containing a form and a
>>>> list. The list is populated with a DataView, which gets its data from a
>>>> SortableDataProvider that I have implemented according to the repeater
>>>> examples provided on wicket-library.com.
>>>>
>>>> What I want to do is to change the sort order based on a user selection
>>>> from a DropDownChoice in the form. I've used an
>>>> AjaxFormComponentUpdatingBehavior to listen to the dropdown's onchange
>>>> event. In the onUpdate() method I change the sortparam in the
>>>> dataprovider according to the selection and then add the container div
>>>> to the AjaxRequestTarget.
>>>>
>>>> What I expect to happen is that the DataView updates to reflect the new
>>>> sort order. What actually happens is that the DataView completely
>>>> disappears from the page! (The Wicket Ajax Debug window shows me that
>>>> the spot where the list should be in the HTML within the ajax-response
>>>> is indeed empty.)
>>>>
>>>> I've already set the outputmarkupid and the outputmarkupplaceholdertag
>>>> properties on the container to true but that makes no difference.
>>>>
>>>> Any ideas are appreciated!
>>>>
>>>> regards,
>>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to