You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Martin Grigorov (Resolved) (JIRA)" <ji...@apache.org> on 2012/01/07 10:45:39 UTC
[jira] [Resolved] (WICKET-4305) Problems with
AbstractAutoCompleteBehavior on BookmarkablePages
[ https://issues.apache.org/jira/browse/WICKET-4305?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Martin Grigorov resolved WICKET-4305.
-------------------------------------
Resolution: Fixed
Fix Version/s: 6.0.0
Assignee: Martin Grigorov
> Problems with AbstractAutoCompleteBehavior on BookmarkablePages
> ---------------------------------------------------------------
>
> Key: WICKET-4305
> URL: https://issues.apache.org/jira/browse/WICKET-4305
> Project: Wicket
> Issue Type: Bug
> Components: wicket-extensions
> Affects Versions: 1.5.3
> Reporter: Daniel Peters
> Assignee: Martin Grigorov
> Fix For: 6.0.0
>
>
> AbstractAutoCompleteBehavior internally uses the GET parameter "q".
> If you are on a bookmarkable page that also uses the parameter q (very common for searches), AutoCompleteTextFields wont work anymore. They will only see the original q parameter that has been used to call the page.
> The autocomplete appends the q= param to the URL and read it with getParameter("q"). Since there are 2 params with the same name now, it will always get the first.
> My first fix was to rename the autocomplete parameter to something like "wicketac:q", but this breaks WicketStuff-objectautocomplete which uses the same JS, so this is probably not a good idea.
> Another idea was to get the _last_ q-parameter of the URL in AbstractAutoCompleteBehavior.
> This works quite well...
> Code:
> protected void respond(final AjaxRequestTarget target)
> {
> final RequestCycle requestCycle = RequestCycle.get();
> final List<StringValue> values = requestCycle.getRequest().getRequestParameters()
> .getParameterValues("q");
> final String val = (values != null && values.size() > 0) ? values.get(values.size() - 1)
> .toOptionalString() : null;
> onRequest(val, requestCycle);
> }
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira