Author: markt Date: Mon Feb 28 18:15:48 2011 New Revision: 1075458 URL: http://svn.apache.org/viewvc?rev=1075458&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/trunk/java/org/apache/catalina/ant/JMXGetTask.java tomcat/trunk/java/org/apache/catalina/ant/JMXQueryTask.java tomcat/trunk/java/org/apache/catalina/ant/JMXSetTask.java tomcat/trunk/java/org/apache/catalina/ant/ResourcesTask.java tomcat/trunk/java/org/apache/catalina/ant/UndeployTask.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/ant/JMXGetTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/JMXGetTask.java?rev=1075458&r1=1075457&r2=1075458&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ant/JMXGetTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/JMXGetTask.java Mon Feb 28 18:15:48 2011 @@ -19,6 +19,9 @@ package org.apache.catalina.ant; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; + import org.apache.tools.ant.BuildException; @@ -90,8 +93,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/trunk/java/org/apache/catalina/ant/JMXQueryTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/JMXQueryTask.java?rev=1075458&r1=1075457&r2=1075458&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ant/JMXQueryTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/JMXQueryTask.java Mon Feb 28 18:15:48 2011 @@ -19,6 +19,9 @@ package org.apache.catalina.ant; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; + import org.apache.tools.ant.BuildException; @@ -73,7 +76,17 @@ public class JMXQueryTask extends Abstra @Override 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/trunk/java/org/apache/catalina/ant/JMXSetTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/JMXSetTask.java?rev=1075458&r1=1075457&r2=1075458&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ant/JMXSetTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/JMXSetTask.java Mon Feb 28 18:15:48 2011 @@ -19,6 +19,9 @@ package org.apache.catalina.ant; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; + import org.apache.tools.ant.BuildException; @@ -113,8 +116,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/trunk/java/org/apache/catalina/ant/ResourcesTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/ResourcesTask.java?rev=1075458&r1=1075457&r2=1075458&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ant/ResourcesTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/ResourcesTask.java Mon Feb 28 18:15:48 2011 @@ -19,6 +19,9 @@ package org.apache.catalina.ant; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; + import org.apache.tools.ant.BuildException; @@ -64,7 +67,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/trunk/java/org/apache/catalina/ant/UndeployTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/UndeployTask.java?rev=1075458&r1=1075457&r2=1075458&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/ant/UndeployTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/UndeployTask.java Mon Feb 28 18:15:48 2011 @@ -19,6 +19,9 @@ package org.apache.catalina.ant; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; + import org.apache.tools.ant.BuildException; @@ -66,7 +69,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/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1075458&r1=1075457&r2=1075458&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Mon Feb 28 18:15:48 2011 @@ -42,6 +42,17 @@ General, Catalina, Coyote, Jasper, Cluster, Web applications, Extras, Tribes, Other --> +<section name="Tomcat 7.0.10 (markt)"> + <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> + </changelog> + </subsection> +</section> <section name="Tomcat 7.0.9 (markt)"> <subsection name="Catalina"> <changelog> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org