Author: ivaynberg
Date: Sun Oct 25 07:18:44 2009
New Revision: 829503

URL: http://svn.apache.org/viewvc?rev=829503&view=rev
Log:
WICKET-2491
Issue: WICKET-2491

Modified:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/Request.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js
    
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java
    
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/servlet/ServletWebRequest.java

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/Request.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/Request.java?rev=829503&r1=829502&r2=829503&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/Request.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/Request.java Sun Oct 25 
07:18:44 2009
@@ -128,6 +128,18 @@
         */
        public abstract String getRelativePathPrefixToWicketHandler();
 
+
+       /**
+        * Sets request parameters. Should only be used when one request is 
being created as a
+        * replacement for another.
+        * 
+        * @param requestParameters
+        */
+       public final void setRequestParameters(RequestParameters 
requestParameters)
+       {
+               this.requestParameters = requestParameters;
+       }
+
        /**
         * Gets the request parameters object using the instance of {...@link 
IRequestCodingStrategy} of
         * the provided request cycle processor.

Modified: 
wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js?rev=829503&r1=829502&r2=829503&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js 
(original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js Sun 
Oct 25 07:18:44 2009
@@ -1116,7 +1116,7 @@
                
                // reconfigure the form
                form.target=iframe.name;
-               form.action=this.request.url;
+               form.action=this.request.url + "&wicket:ajax=true";
                
                // create submitting button element
                if (submitButton!=null) {

Modified: 
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java?rev=829503&r1=829502&r2=829503&view=diff
==============================================================================
--- 
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java 
(original)
+++ 
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java 
Sun Oct 25 07:18:44 2009
@@ -1432,7 +1432,7 @@
         */
        protected boolean handleMultiPart()
        {
-               if (isMultiPart() && !((WebRequest)getRequest()).isAjax())
+               if (isMultiPart())
                {
                        // Change the request to a multipart web request so 
parameters are
                        // parsed out correctly

Modified: 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/servlet/ServletWebRequest.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/servlet/ServletWebRequest.java?rev=829503&r1=829502&r2=829503&view=diff
==============================================================================
--- 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/servlet/ServletWebRequest.java
 (original)
+++ 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/servlet/ServletWebRequest.java
 Sun Oct 25 07:18:44 2009
@@ -77,6 +77,10 @@
 
                ajax = false;
                String ajaxHeader = httpServletRequest.getHeader("Wicket-Ajax");
+
+               if (Strings.isEmpty(ajaxHeader))
+                       ajaxHeader = 
httpServletRequest.getParameter("wicket:ajax");
+
                if (Strings.isEmpty(ajaxHeader) == false)
                {
                        try
@@ -493,7 +497,10 @@
        {
                try
                {
-                       return new 
MultipartServletWebRequest(httpServletRequest, maxsize);
+                       MultipartServletWebRequest multipart = new 
MultipartServletWebRequest(
+                               httpServletRequest, maxsize);
+                       multipart.setRequestParameters(getRequestParameters());
+                       return multipart;
                }
                catch (FileUploadException e)
                {


Reply via email to