Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
None
-
None
Description
WebRequestCodingStrategy#decode and PortletRequestCodingStrategy#decode try to remove values from the request's parameter map. As WicketPortletRequest returns just the immutable request parameters, this fails with an exception like this:
java.lang.UnsupportedOperationException
at java.util.Collections$1.remove(Collections.java:1012)
at wicket.protocol.http.portlet.PortletRequestCodingStrategy.decode (PortletRequestCodingStrategy.java:119)
at wicket.Request.getRequestParameters(Request.java:163)
at wicket.RequestCycle.step(RequestCycle.java:992)
at wicket.RequestCycle.steps(RequestCycle.java :1084)
at wicket.RequestCycle.request(RequestCycle.java:454)
at wicket.protocol.http.portlet.WicketPortlet.processAction(WicketPortlet.java:198)
What we should do:
1) make parameter map in both ServletWebRequest and WicketPortletRequest immutable
2) remove the code that tries to remove wicket specific request parameters (why should we care about having them in there anyway)
Attachments
Attachments
Issue Links
- relates to
-
WICKET-3070 Method getParameterMap in CryptedUrlWebRequestCodingStrategy.DecodedUrlRequest is broken
- Resolved