Re: svn commit: r1731734 - in /tomcat/trunk: java/org/apache/catalina/manager/host/ webapps/docs/

2016-03-30 Thread Coty Sutherland
In addition to the object array size restoration made in 1731735, I think
that another erroneous change that I submitted slipped in to your patch. I
noticed it while poking around at tomcat-8.5.0.Beta. Now when you add a
host you get a button that just contains {5} where the persist button that
I proposed would have been. You can revert the change with the following
patch to make it work the way it did before:

+++
Index: java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
===
--- java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java (revision
1737136)
+++ java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java (working
copy)
@@ -511,9 +511,6 @@
 "  " +
 "   " +
 "  \n" +
-"  " +
-"   " +
-"  \n" +
 " \n" +
 "\n";

+++

Cheers

On Mon, Feb 22, 2016 at 3:19 PM,  wrote:

> Author: markt
> Date: Mon Feb 22 20:19:15 2016
> New Revision: 1731734
>
> URL: http://svn.apache.org/viewvc?rev=1731734=rev
> Log:
> Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=48674
> Implement an option within the Host Manager web pplication to persist the
> current configuration.
> Based on a patch by Coty Sutherland.
>
> Modified:
>
> tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
>
> tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
>
> tomcat/trunk/java/org/apache/catalina/manager/host/LocalStrings.properties
> tomcat/trunk/webapps/docs/changelog.xml
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java?rev=1731734=1731733=1731734=diff
>
> ==
> ---
> tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
> (original)
> +++
> tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
> Mon Feb 22 20:19:15 2016
> @@ -94,7 +94,8 @@ public final class HTMLHostManagerServle
>  } else if (command.equals("/list")) {
>  // Nothing to do - always generate list
>  } else if (command.equals("/add") || command.equals("/remove") ||
> -command.equals("/start") || command.equals("/stop")) {
> +command.equals("/start") || command.equals("/stop") ||
> +command.equals("/persist")) {
>  message = smClient.getString(
>  "hostManagerServlet.postCommand", command);
>  } else {
> @@ -143,6 +144,8 @@ public final class HTMLHostManagerServle
>  message = start(name, smClient);
>  } else if (command.equals("/stop")) {
>  message = stop(name, smClient);
> +} else if (command.equals("/persist")) {
> +message = persist(smClient);
>  } else {
>  //Try GET
>  doGet(request, response);
> @@ -227,6 +230,22 @@ public final class HTMLHostManagerServle
>
>
>  /**
> + * Persist the current configuration to server.xml.
> + *
> + * @param smClient i18n resources localized for the client
> + */
> +protected String persist(StringManager smClient) {
> +
> +StringWriter stringWriter = new StringWriter();
> +PrintWriter printWriter = new PrintWriter(stringWriter);
> +
> +super.persist(printWriter, smClient);
> +
> +return stringWriter.toString();
> +}
> +
> +
> +/**
>   * Render a HTML list of the currently active Contexts in our virtual
> host,
>   * and memory and server status information.
>   *
> @@ -341,7 +360,7 @@ public final class HTMLHostManagerServle
>  writer.print
>  (MessageFormat.format(HOSTS_ROW_DETAILS_SECTION,
> args));
>
> -args = new Object[4];
> +args = new Object[6];
>  if (host.getState().isAvailable()) {
>  args[0] = response.encodeURL
>  (request.getContextPath() +
> @@ -362,10 +381,10 @@ public final class HTMLHostManagerServle
>  args[3] = hostsRemove;
>  if (host == this.installedHost) {
>  writer.print(MessageFormat.format(
> -MANAGER_HOST_ROW_BUTTON_SECTION, args));
> +MANAGER_HOST_ROW_BUTTON_SECTION, args));
>  } else {
>  writer.print(MessageFormat.format(
> -HOSTS_ROW_BUTTON_SECTION, args));
> +HOSTS_ROW_BUTTON_SECTION, args));
>  }
>  }
>  }
> @@ -413,6 +432,14 @@ public final class HTMLHostManagerServle
>  args[0] = smClient.getString("htmlHostManagerServlet.addButton");
>  

svn commit: r1731734 - in /tomcat/trunk: java/org/apache/catalina/manager/host/ webapps/docs/

2016-02-22 Thread markt
Author: markt
Date: Mon Feb 22 20:19:15 2016
New Revision: 1731734

URL: http://svn.apache.org/viewvc?rev=1731734=rev
Log:
Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=48674
Implement an option within the Host Manager web pplication to persist the 
current configuration.
Based on a patch by Coty Sutherland.

Modified:

tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
tomcat/trunk/java/org/apache/catalina/manager/host/LocalStrings.properties
tomcat/trunk/webapps/docs/changelog.xml

Modified: 
tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java?rev=1731734=1731733=1731734=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java 
(original)
+++ 
tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java 
Mon Feb 22 20:19:15 2016
@@ -94,7 +94,8 @@ public final class HTMLHostManagerServle
 } else if (command.equals("/list")) {
 // Nothing to do - always generate list
 } else if (command.equals("/add") || command.equals("/remove") ||
-command.equals("/start") || command.equals("/stop")) {
+command.equals("/start") || command.equals("/stop") ||
+command.equals("/persist")) {
 message = smClient.getString(
 "hostManagerServlet.postCommand", command);
 } else {
@@ -143,6 +144,8 @@ public final class HTMLHostManagerServle
 message = start(name, smClient);
 } else if (command.equals("/stop")) {
 message = stop(name, smClient);
+} else if (command.equals("/persist")) {
+message = persist(smClient);
 } else {
 //Try GET
 doGet(request, response);
@@ -227,6 +230,22 @@ public final class HTMLHostManagerServle
 
 
 /**
+ * Persist the current configuration to server.xml.
+ *
+ * @param smClient i18n resources localized for the client
+ */
+protected String persist(StringManager smClient) {
+
+StringWriter stringWriter = new StringWriter();
+PrintWriter printWriter = new PrintWriter(stringWriter);
+
+super.persist(printWriter, smClient);
+
+return stringWriter.toString();
+}
+
+
+/**
  * Render a HTML list of the currently active Contexts in our virtual host,
  * and memory and server status information.
  *
@@ -341,7 +360,7 @@ public final class HTMLHostManagerServle
 writer.print
 (MessageFormat.format(HOSTS_ROW_DETAILS_SECTION, args));
 
-args = new Object[4];
+args = new Object[6];
 if (host.getState().isAvailable()) {
 args[0] = response.encodeURL
 (request.getContextPath() +
@@ -362,10 +381,10 @@ public final class HTMLHostManagerServle
 args[3] = hostsRemove;
 if (host == this.installedHost) {
 writer.print(MessageFormat.format(
-MANAGER_HOST_ROW_BUTTON_SECTION, args));
+MANAGER_HOST_ROW_BUTTON_SECTION, args));
 } else {
 writer.print(MessageFormat.format(
-HOSTS_ROW_BUTTON_SECTION, args));
+HOSTS_ROW_BUTTON_SECTION, args));
 }
 }
 }
@@ -413,6 +432,14 @@ public final class HTMLHostManagerServle
 args[0] = smClient.getString("htmlHostManagerServlet.addButton");
 writer.print(MessageFormat.format(ADD_SECTION_END, args));
 
+// Persist Configuration Section
+args = new Object[4];
+args[0] = smClient.getString("htmlHostManagerServlet.persistTitle");
+args[1] = response.encodeURL(request.getContextPath() + 
"/html/persist");
+args[2] = 
smClient.getString("htmlHostManagerServlet.persistAllButton");
+args[3] = smClient.getString("htmlHostManagerServlet.persistAll");
+writer.print(MessageFormat.format(PERSIST_SECTION, args));
+
 // Server Header Section
 args = new Object[7];
 args[0] = smClient.getString("htmlHostManagerServlet.serverTitle");
@@ -483,6 +510,9 @@ public final class HTMLHostManagerServle
 "  " +
 "   " +
 "  \n" +
+"  " +
+"   " +
+"  \n" +
 " \n" +
 "\n";
 
@@ -552,4 +582,20 @@ public final class HTMLHostManagerServle
 "\n" +
 "\n";
 
+private static final String PERSIST_SECTION =
+"\n" +
+"\n" +
+" {0}\n" +
+"\n" +
+"\n" +
+