Author: markt
Date: Mon Mar 14 11:56:53 2011
New Revision: 1081341

URL: http://svn.apache.org/viewvc?rev=1081341&view=rev
Log:
* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=28852
Add URL encoding where missing to parameters in URLs presented by Ant tasks to 
the Manager application.
Based on a patch by Stephane Bailliez.

Modified:
    tomcat/tc5.5.x/trunk/STATUS.txt
    
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXGetTask.java
    
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXQueryTask.java
    
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXSetTask.java
    
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/ResourcesTask.java
    
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/UndeployTask.java
    tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml

Modified: tomcat/tc5.5.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1081341&r1=1081340&r2=1081341&view=diff
==============================================================================
--- tomcat/tc5.5.x/trunk/STATUS.txt (original)
+++ tomcat/tc5.5.x/trunk/STATUS.txt Mon Mar 14 11:56:53 2011
@@ -45,14 +45,6 @@ PATCHES PROPOSED TO BACKPORT:
   +1: markt, kfujino
   -1:
 
-* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=28852
-  Add URL encoding where missing to parameters in URLs presented by Ant tasks 
to
-  the Manager application.
-  Based on a patch by Stephane Bailliez.
-  http://svn.apache.org/viewvc?rev=1075458&view=rev
-  +1: markt, kkolinko, kfujino
-  -1:
-
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=27988
   Improve reporting of missing files
   http://svn.apache.org/viewvc?rev=1076212&view=rev

Modified: 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXGetTask.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXGetTask.java?rev=1081341&r1=1081340&r2=1081341&view=diff
==============================================================================
--- 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXGetTask.java
 (original)
+++ 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXGetTask.java
 Mon Mar 14 11:56:53 2011
@@ -19,6 +19,9 @@
 package org.apache.catalina.ant;
 
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+
 import org.apache.tools.ant.BuildException;
 
 
@@ -89,8 +92,13 @@ public class JMXGetTask extends Abstract
                 ("Must specify 'bean' and 'attribute' attributes");
         }
         log("Getting attribute " + attribute +
-                " in bean " + bean ); 
-        execute("/jmxproxy/?get=" + bean 
-                + "&att=" + attribute );
+                " in bean " + bean );
+        try {
+            execute("/jmxproxy/?get=" + URLEncoder.encode(bean, getCharset()) 
+                    + "&att=" + URLEncoder.encode(attribute, getCharset()));
+        } catch (UnsupportedEncodingException e) {
+            throw new BuildException
+                ("Invalid 'charset' attribute: " + getCharset());
+        }
     }
 }

Modified: 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXQueryTask.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXQueryTask.java?rev=1081341&r1=1081340&r2=1081341&view=diff
==============================================================================
--- 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXQueryTask.java
 (original)
+++ 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXQueryTask.java
 Mon Mar 14 11:56:53 2011
@@ -19,6 +19,9 @@
 package org.apache.catalina.ant;
 
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+
 import org.apache.tools.ant.BuildException;
 
 
@@ -72,7 +75,17 @@ public class JMXQueryTask extends Abstra
      */
     public void execute() throws BuildException {
         super.execute();
-        String queryString = (query == null) ? "":("?qry="+query);
+        String queryString;
+        if (query == null) {
+            queryString = "";
+        } else {
+            try {
+                queryString = "?qry=" + URLEncoder.encode(query, getCharset());
+            } catch (UnsupportedEncodingException e) {
+                throw new BuildException
+                    ("Invalid 'charset' attribute: " + getCharset());
+            }
+        }
         log("Query string is " + queryString); 
         execute ("/jmxproxy/" + queryString);
     }

Modified: 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXSetTask.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXSetTask.java?rev=1081341&r1=1081340&r2=1081341&view=diff
==============================================================================
--- 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXSetTask.java
 (original)
+++ 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/JMXSetTask.java
 Mon Mar 14 11:56:53 2011
@@ -19,6 +19,9 @@
 package org.apache.catalina.ant;
 
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+
 import org.apache.tools.ant.BuildException;
 
 
@@ -112,8 +115,13 @@ public class JMXSetTask extends Abstract
         log("Setting attribute " + attribute +
                             " in bean " + bean +
                             " to " + value); 
-        execute("/jmxproxy/?set=" + bean 
-                + "&att=" + attribute 
-                + "&val=" + value);
+        try {
+            execute("/jmxproxy/?set=" + URLEncoder.encode(bean, getCharset()) +
+                    "&att=" + URLEncoder.encode(attribute, getCharset()) +
+                    "&val=" + URLEncoder.encode(value, getCharset()));
+        } catch (UnsupportedEncodingException e) {
+            throw new BuildException
+                ("Invalid 'charset' attribute: " + getCharset());
+        }
     }
 }

Modified: 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/ResourcesTask.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/ResourcesTask.java?rev=1081341&r1=1081340&r2=1081341&view=diff
==============================================================================
--- 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/ResourcesTask.java
 (original)
+++ 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/ResourcesTask.java
 Mon Mar 14 11:56:53 2011
@@ -19,6 +19,9 @@
 package org.apache.catalina.ant;
 
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+
 import org.apache.tools.ant.BuildException;
 
 
@@ -63,7 +66,13 @@ public class ResourcesTask extends Abstr
 
         super.execute();
         if (type != null) {
-            execute("/resources?type=" + type);
+            try {
+                execute("/resources?type=" +
+                        URLEncoder.encode(type, getCharset()));
+            } catch (UnsupportedEncodingException e) {
+                throw new BuildException
+                    ("Invalid 'charset' attribute: " + getCharset());
+            }
         } else {
             execute("/resources");
         }

Modified: 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/UndeployTask.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/UndeployTask.java?rev=1081341&r1=1081340&r2=1081341&view=diff
==============================================================================
--- 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/UndeployTask.java
 (original)
+++ 
tomcat/tc5.5.x/trunk/container/catalina/src/share/org/apache/catalina/ant/UndeployTask.java
 Mon Mar 14 11:56:53 2011
@@ -19,6 +19,9 @@
 package org.apache.catalina.ant;
 
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+
 import org.apache.tools.ant.BuildException;
 
 
@@ -65,7 +68,13 @@ public class UndeployTask extends Abstra
                 ("Must specify 'path' attribute");
         }
 
-        execute("/undeploy?path=" + this.path);
+        try {
+            execute("/undeploy?path=" +
+                    URLEncoder.encode(this.path, getCharset()));
+        } catch (UnsupportedEncodingException e) {
+            throw new BuildException
+                ("Invalid 'charset' attribute: " + getCharset());
+        }
     }
 
 

Modified: tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml?rev=1081341&r1=1081340&r2=1081341&view=diff
==============================================================================
--- tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml (original)
+++ tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml Mon Mar 14 
11:56:53 2011
@@ -43,6 +43,11 @@
   <subsection name="Catalina">
     <changelog>
       <fix>
+        <bug>28852</bug>: Add URL encoding where missing to parameters in URLs
+        presented by Ant tasks to the Manager application. Based on a patch by
+        Stephane Bailliez. (mark) 
+      </fix>
+      <fix>
         <bug>50189</bug>: Once the application has finished writing to the
         response, prevent further reads from the request since this causes
         various problems in the connectors which do not expect this. (markt)



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

Reply via email to