[ 
https://issues.apache.org/jira/browse/WICKET-2033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12676777#action_12676777
 ] 

Timo Rantalaiho commented on WICKET-2033:
-----------------------------------------

By just dropping the encoding from here seems to fix the issue... but I wonder 
if it will break anything?

Index: 
wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java
===================================================================
--- 
wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java
  (revision 747895)
+++ 
wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java
  Wed Feb 25 22:41:26 EET 2009
@@ -972,7 +972,7 @@
 
                if 
(IActivePageBehaviorListener.INTERFACE.getName().equals(listenerName))
                {
-                       url.append(url.indexOf("?") > -1 ? "&" : 
"?").append(
+                       url.append(url.indexOf("?") > -1 ? "&" : "?").append(
                                
IGNORE_IF_NOT_ACTIVE_PARAMETER_NAME).append("=true");
                }
                return url;



> & instead of & in javascript
> --------------------------------
>
>                 Key: WICKET-2033
>                 URL: https://issues.apache.org/jira/browse/WICKET-2033
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.4-RC1
>         Environment: all
>            Reporter: Tuomas Karkkainen
>            Priority: Minor
>         Attachments: wicket-2033-quickstart.zip
>
>
> the non httpsessionstore part of:
> https://issues.apache.org/jira/browse/WICKET-1971
> is that 
> in the 
> wicket:ignoreIfNotActive actually becomes
> amp;wicket:ignoreIfNotActive=true
> in:
>       protected CharSequence encode(RequestCycle requestCycle,
>                       IListenerInterfaceRequestTarget requestTarget)
> of WebRequestCodingStrategy on the line:
>                       url.append(url.indexOf("?") > -1 ? "&" : 
> "?").append(
>                                       
> IGNORE_IF_NOT_ACTIVE_PARAMETER_NAME).append("=true");
> so when this happens in 
>       public final RequestParameters decode(final Request request) {
> ---
>               if (request.getParameter(IGNORE_IF_NOT_ACTIVE_PARAMETER_NAME) 
> != null)
>               {
>                       parameters.setOnlyProcessIfPathActive(true);
>               }
> ---
> this never actually happens.
> then if you have a throttle, ajaxlazyloadpanel etc with 
> onlyprocessifpathactive set to true, and you logout, but go to another wicket 
> page, then the original session is destroyed and a new one is created
> if this is worked around in the way the  guys on WICKET-1971 suggest,
> WebRequestCycleProcessor
> method
>       public IRequestTarget resolve(final RequestCycle requestCycle,
>                       final RequestParameters requestParameters)
>                               if 
> (requestParameters.isOnlyProcessIfPathActive())
> last branch falls through:
>                                       else
>                                       {
>                                               // TODO also this should work..
>                                       }
> and it throws PageExpiredException because the request 
> component/page/behavior does not exist in this new session.   even though 
> onlyprocessifpathactive was set to true, and it's purpose is precisely to 
> avoid pageexpiredexception.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to