Author: kkolinko
Date: Mon Feb 4 14:02:18 2019
New Revision: 1852916
URL: http://svn.apache.org/viewvc?rev=1852916&view=rev
Log:
Use client's preferred language for the Server Status page of the Manager web
application.
Review and fix several cases when the client's language preference was not
respected in Manager and Host Manager web applications.
Modified:
tomcat/trunk/java/org/apache/catalina/manager/HTMLManagerServlet.java
tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java
tomcat/trunk/java/org/apache/catalina/manager/StatusManagerServlet.java
tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
tomcat/trunk/webapps/docs/changelog.xml
Modified: tomcat/trunk/java/org/apache/catalina/manager/HTMLManagerServlet.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/HTMLManagerServlet.java?rev=1852916&r1=1852915&r2=1852916&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/manager/HTMLManagerServlet.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/manager/HTMLManagerServlet.java Mon
Feb 4 14:02:18 2019
@@ -139,11 +139,11 @@ public final class HTMLManagerServlet ex
e.toString());
}
} else if (command.equals("/sslConnectorCiphers")) {
- sslConnectorCiphers(request, response);
+ sslConnectorCiphers(request, response, smClient);
} else if (command.equals("/sslConnectorCerts")) {
- sslConnectorCerts(request, response);
+ sslConnectorCerts(request, response, smClient);
} else if (command.equals("/sslConnectorTrustedCerts")) {
- sslConnectorTrustedCerts(request, response);
+ sslConnectorTrustedCerts(request, response, smClient);
} else if (command.equals("/upload") || command.equals("/deploy") ||
command.equals("/reload") || command.equals("/undeploy") ||
command.equals("/expire") || command.equals("/start") ||
@@ -764,24 +764,24 @@ public final class HTMLManagerServlet ex
protected void sslConnectorCiphers(HttpServletRequest request,
- HttpServletResponse response) throws ServletException, IOException
{
- request.setAttribute("cipherList", getConnectorCiphers());
+ HttpServletResponse response, StringManager smClient) throws
ServletException, IOException {
+ request.setAttribute("cipherList", getConnectorCiphers(smClient));
getServletContext().getRequestDispatcher(
connectorCiphersJspPath).forward(request, response);
}
protected void sslConnectorCerts(HttpServletRequest request,
- HttpServletResponse response) throws ServletException, IOException
{
- request.setAttribute("certList", getConnectorCerts());
+ HttpServletResponse response, StringManager smClient) throws
ServletException, IOException {
+ request.setAttribute("certList", getConnectorCerts(smClient));
getServletContext().getRequestDispatcher(
connectorCertsJspPath).forward(request, response);
}
protected void sslConnectorTrustedCerts(HttpServletRequest request,
- HttpServletResponse response) throws ServletException, IOException
{
- request.setAttribute("trustedCertList", getConnectorTrustedCerts());
+ HttpServletResponse response, StringManager smClient) throws
ServletException, IOException {
+ request.setAttribute("trustedCertList",
getConnectorTrustedCerts(smClient));
getServletContext().getRequestDispatcher(
connectorTrustedCertsJspPath).forward(request, response);
}
Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java?rev=1852916&r1=1852915&r2=1852916&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java (original)
+++ tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Mon Feb
4 14:02:18 2019
@@ -627,7 +627,7 @@ public class ManagerServlet extends Http
protected void sslConnectorCiphers(PrintWriter writer, StringManager
smClient) {
writer.println(smClient.getString("managerServlet.sslConnectorCiphers"));
- Map<String,List<String>> connectorCiphers = getConnectorCiphers();
+ Map<String,List<String>> connectorCiphers =
getConnectorCiphers(smClient);
for (Map.Entry<String,List<String>> entry :
connectorCiphers.entrySet()) {
writer.println(entry.getKey());
for (String cipher : entry.getValue()) {
@@ -640,7 +640,7 @@ public class ManagerServlet extends Http
private void sslConnectorCerts(PrintWriter writer, StringManager smClient)
{
writer.println(smClient.getString("managerServlet.sslConnectorCerts"));
- Map<String,List<String>> connectorCerts = getConnectorCerts();
+ Map<String,List<String>> connectorCerts = getConnectorCerts(smClient);
for (Map.Entry<String,List<String>> entry : connectorCerts.entrySet())
{
writer.println(entry.getKey());
for (String cert : entry.getValue()) {
@@ -652,7 +652,7 @@ public class ManagerServlet extends Http
private void sslConnectorTrustedCerts(PrintWriter writer, StringManager
smClient) {
writer.println(smClient.getString("managerServlet.sslConnectorTrustedCerts"));
- Map<String,List<String>> connectorTrustedCerts =
getConnectorTrustedCerts();
+ Map<String,List<String>> connectorTrustedCerts =
getConnectorTrustedCerts(smClient);
for (Map.Entry<String,List<String>> entry :
connectorTrustedCerts.entrySet()) {
writer.println(entry.getKey());
for (String cert : entry.getValue()) {
@@ -1237,7 +1237,7 @@ public class ManagerServlet extends Http
if (debug >= 1)
log("serverinfo");
try {
- writer.println(sm.getString("managerServlet.serverInfo",
ServerInfo.getServerInfo(),
+ writer.println(smClient.getString("managerServlet.serverInfo",
ServerInfo.getServerInfo(),
System.getProperty("os.name"),
System.getProperty("os.version"), System.getProperty("os.arch"),
System.getProperty("java.runtime.version"),
System.getProperty("java.vm.vendor")));
} catch (Throwable t) {
@@ -1664,7 +1664,7 @@ public class ManagerServlet extends Http
protected static boolean validateContextName(ContextName cn,
- PrintWriter writer, StringManager sm) {
+ PrintWriter writer, StringManager smClient) {
// ContextName should be non-null with a path that is empty or starts
// with /
@@ -1677,11 +1677,11 @@ public class ManagerServlet extends Http
if (cn != null) {
path = Escape.htmlElementContent(cn.getPath());
}
- writer.println(sm.getString("managerServlet.invalidPath", path));
+ writer.println(smClient.getString("managerServlet.invalidPath", path));
return false;
}
- protected Map<String,List<String>> getConnectorCiphers() {
+ protected Map<String,List<String>> getConnectorCiphers(StringManager
smClient) {
Map<String,List<String>> result = new HashMap<>();
Connector connectors[] = getConnectors();
@@ -1696,7 +1696,7 @@ public class ManagerServlet extends Http
}
} else {
ArrayList<String> cipherList = new ArrayList<>(1);
- cipherList.add(sm.getString("managerServlet.notSslConnector"));
+
cipherList.add(smClient.getString("managerServlet.notSslConnector"));
result.put(connector.toString(), cipherList);
}
}
@@ -1704,7 +1704,7 @@ public class ManagerServlet extends Http
}
- protected Map<String,List<String>> getConnectorCerts() {
+ protected Map<String,List<String>> getConnectorCerts(StringManager
smClient) {
Map<String,List<String>> result = new HashMap<>();
Connector connectors[] = getConnectors();
@@ -1727,7 +1727,7 @@ public class ManagerServlet extends Http
}
X509Certificate[] certs =
sslContext.getCertificateChain(alias);
if (certs == null) {
-
certList.add(sm.getString("managerServlet.certsNotAvailable"));
+
certList.add(smClient.getString("managerServlet.certsNotAvailable"));
} else {
for (Certificate cert : certs) {
certList.add(cert.toString());
@@ -1737,14 +1737,14 @@ public class ManagerServlet extends Http
}
} else {
List<String> certList = new ArrayList<>();
-
certList.add(sm.getString("managerServlet.certsNotAvailable"));
+
certList.add(smClient.getString("managerServlet.certsNotAvailable"));
String name = connector.toString() + "-" +
sslHostConfig.getHostName();
result.put(name, certList);
}
}
} else {
List<String> certList = new ArrayList<>(1);
- certList.add(sm.getString("managerServlet.notSslConnector"));
+
certList.add(smClient.getString("managerServlet.notSslConnector"));
result.put(connector.toString(), certList);
}
}
@@ -1753,7 +1753,7 @@ public class ManagerServlet extends Http
}
- protected Map<String,List<String>> getConnectorTrustedCerts() {
+ protected Map<String,List<String>> getConnectorTrustedCerts(StringManager
smClient) {
Map<String,List<String>> result = new HashMap<>();
Connector connectors[] = getConnectors();
@@ -1769,22 +1769,22 @@ public class ManagerServlet extends Http
sslHostConfig.getCertificates().iterator().next().getSslContext();
X509Certificate[] certs =
sslContext.getAcceptedIssuers();
if (certs == null) {
-
certList.add(sm.getString("managerServlet.certsNotAvailable"));
+
certList.add(smClient.getString("managerServlet.certsNotAvailable"));
} else if (certs.length == 0) {
-
certList.add(sm.getString("managerServlet.trustedCertsNotConfigured"));
+
certList.add(smClient.getString("managerServlet.trustedCertsNotConfigured"));
} else {
for (Certificate cert : certs) {
certList.add(cert.toString());
}
}
} else {
-
certList.add(sm.getString("managerServlet.certsNotAvailable"));
+
certList.add(smClient.getString("managerServlet.certsNotAvailable"));
}
result.put(name, certList);
}
} else {
List<String> certList = new ArrayList<>(1);
- certList.add(sm.getString("managerServlet.notSslConnector"));
+
certList.add(smClient.getString("managerServlet.notSslConnector"));
result.put(connector.toString(), certList);
}
}
Modified:
tomcat/trunk/java/org/apache/catalina/manager/StatusManagerServlet.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/StatusManagerServlet.java?rev=1852916&r1=1852915&r2=1852916&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/manager/StatusManagerServlet.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/manager/StatusManagerServlet.java Mon
Feb 4 14:02:18 2019
@@ -195,6 +195,9 @@ public class StatusManagerServlet
HttpServletResponse response)
throws IOException, ServletException {
+ StringManager smClient = StringManager.getManager(
+ Constants.Package, request.getLocales());
+
// mode is flag for HTML or XML output
int mode = 0;
// if ?XML=true, set the mode to XML
@@ -220,49 +223,49 @@ public class StatusManagerServlet
args = new Object[2];
args[0] = request.getContextPath();
if (completeStatus) {
- args[1] = sm.getString("statusServlet.complete");
+ args[1] = smClient.getString("statusServlet.complete");
} else {
- args[1] = sm.getString("statusServlet.title");
+ args[1] = smClient.getString("statusServlet.title");
}
// use StatusTransformer to output status
StatusTransformer.writeBody(writer,args,mode);
// Manager Section
args = new Object[9];
- args[0] = sm.getString("htmlManagerServlet.manager");
+ args[0] = smClient.getString("htmlManagerServlet.manager");
args[1] = response.encodeURL(request.getContextPath() + "/html/list");
- args[2] = sm.getString("htmlManagerServlet.list");
+ args[2] = smClient.getString("htmlManagerServlet.list");
args[3] = response.encodeURL
(request.getContextPath() + "/" +
- sm.getString("htmlManagerServlet.helpHtmlManagerFile"));
- args[4] = sm.getString("htmlManagerServlet.helpHtmlManager");
+ smClient.getString("htmlManagerServlet.helpHtmlManagerFile"));
+ args[4] = smClient.getString("htmlManagerServlet.helpHtmlManager");
args[5] = response.encodeURL
(request.getContextPath() + "/" +
- sm.getString("htmlManagerServlet.helpManagerFile"));
- args[6] = sm.getString("htmlManagerServlet.helpManager");
+ smClient.getString("htmlManagerServlet.helpManagerFile"));
+ args[6] = smClient.getString("htmlManagerServlet.helpManager");
if (completeStatus) {
args[7] = response.encodeURL
(request.getContextPath() + "/status");
- args[8] = sm.getString("statusServlet.title");
+ args[8] = smClient.getString("statusServlet.title");
} else {
args[7] = response.encodeURL
(request.getContextPath() + "/status/all");
- args[8] = sm.getString("statusServlet.complete");
+ args[8] = smClient.getString("statusServlet.complete");
}
// use StatusTransformer to output status
StatusTransformer.writeManager(writer,args,mode);
// Server Header Section
args = new Object[9];
- args[0] = sm.getString("htmlManagerServlet.serverTitle");
- args[1] = sm.getString("htmlManagerServlet.serverVersion");
- args[2] = sm.getString("htmlManagerServlet.serverJVMVersion");
- args[3] = sm.getString("htmlManagerServlet.serverJVMVendor");
- args[4] = sm.getString("htmlManagerServlet.serverOSName");
- args[5] = sm.getString("htmlManagerServlet.serverOSVersion");
- args[6] = sm.getString("htmlManagerServlet.serverOSArch");
- args[7] = sm.getString("htmlManagerServlet.serverHostname");
- args[8] = sm.getString("htmlManagerServlet.serverIPAddress");
+ args[0] = smClient.getString("htmlManagerServlet.serverTitle");
+ args[1] = smClient.getString("htmlManagerServlet.serverVersion");
+ args[2] = smClient.getString("htmlManagerServlet.serverJVMVersion");
+ args[3] = smClient.getString("htmlManagerServlet.serverJVMVendor");
+ args[4] = smClient.getString("htmlManagerServlet.serverOSName");
+ args[5] = smClient.getString("htmlManagerServlet.serverOSVersion");
+ args[6] = smClient.getString("htmlManagerServlet.serverOSArch");
+ args[7] = smClient.getString("htmlManagerServlet.serverHostname");
+ args[8] = smClient.getString("htmlManagerServlet.serverIPAddress");
// use StatusTransformer to output status
StatusTransformer.writePageHeading(writer,args,mode);
@@ -289,26 +292,26 @@ public class StatusManagerServlet
// Display operating system statistics using APR if available
args = new Object[7];
- args[0] = sm.getString("htmlManagerServlet.osPhysicalMemory");
- args[1] = sm.getString("htmlManagerServlet.osAvailableMemory");
- args[2] = sm.getString("htmlManagerServlet.osTotalPageFile");
- args[3] = sm.getString("htmlManagerServlet.osFreePageFile");
- args[4] = sm.getString("htmlManagerServlet.osMemoryLoad");
- args[5] = sm.getString("htmlManagerServlet.osKernelTime");
- args[6] = sm.getString("htmlManagerServlet.osUserTime");
+ args[0] =
smClient.getString("htmlManagerServlet.osPhysicalMemory");
+ args[1] =
smClient.getString("htmlManagerServlet.osAvailableMemory");
+ args[2] = smClient.getString("htmlManagerServlet.osTotalPageFile");
+ args[3] = smClient.getString("htmlManagerServlet.osFreePageFile");
+ args[4] = smClient.getString("htmlManagerServlet.osMemoryLoad");
+ args[5] = smClient.getString("htmlManagerServlet.osKernelTime");
+ args[6] = smClient.getString("htmlManagerServlet.osUserTime");
StatusTransformer.writeOSState(writer, mode, args);
// Display virtual machine statistics
args = new Object[9];
- args[0] = sm.getString("htmlManagerServlet.jvmFreeMemory");
- args[1] = sm.getString("htmlManagerServlet.jvmTotalMemory");
- args[2] = sm.getString("htmlManagerServlet.jvmMaxMemory");
- args[3] =
sm.getString("htmlManagerServlet.jvmTableTitleMemoryPool");
- args[4] = sm.getString("htmlManagerServlet.jvmTableTitleType");
- args[5] = sm.getString("htmlManagerServlet.jvmTableTitleInitial");
- args[6] = sm.getString("htmlManagerServlet.jvmTableTitleTotal");
- args[7] = sm.getString("htmlManagerServlet.jvmTableTitleMaximum");
- args[8] = sm.getString("htmlManagerServlet.jvmTableTitleUsed");
+ args[0] = smClient.getString("htmlManagerServlet.jvmFreeMemory");
+ args[1] = smClient.getString("htmlManagerServlet.jvmTotalMemory");
+ args[2] = smClient.getString("htmlManagerServlet.jvmMaxMemory");
+ args[3] =
smClient.getString("htmlManagerServlet.jvmTableTitleMemoryPool");
+ args[4] =
smClient.getString("htmlManagerServlet.jvmTableTitleType");
+ args[5] =
smClient.getString("htmlManagerServlet.jvmTableTitleInitial");
+ args[6] =
smClient.getString("htmlManagerServlet.jvmTableTitleTotal");
+ args[7] =
smClient.getString("htmlManagerServlet.jvmTableTitleMaximum");
+ args[8] =
smClient.getString("htmlManagerServlet.jvmTableTitleUsed");
// use StatusTransformer to output status
StatusTransformer.writeVMState(writer,mode, args);
@@ -317,25 +320,25 @@ public class StatusManagerServlet
ObjectName objectName = enumeration.nextElement();
String name = objectName.getKeyProperty("name");
args = new Object[19];
- args[0] =
sm.getString("htmlManagerServlet.connectorStateMaxThreads");
- args[1] =
sm.getString("htmlManagerServlet.connectorStateThreadCount");
- args[2] =
sm.getString("htmlManagerServlet.connectorStateThreadBusy");
- args[3] =
sm.getString("htmlManagerServlet.connectorStateAliveSocketCount");
- args[4] =
sm.getString("htmlManagerServlet.connectorStateMaxProcessingTime");
- args[5] =
sm.getString("htmlManagerServlet.connectorStateProcessingTime");
- args[6] =
sm.getString("htmlManagerServlet.connectorStateRequestCount");
- args[7] =
sm.getString("htmlManagerServlet.connectorStateErrorCount");
- args[8] =
sm.getString("htmlManagerServlet.connectorStateBytesRecieved");
- args[9] =
sm.getString("htmlManagerServlet.connectorStateBytesSent");
- args[10] =
sm.getString("htmlManagerServlet.connectorStateTableTitleStage");
- args[11] =
sm.getString("htmlManagerServlet.connectorStateTableTitleTime");
- args[12] =
sm.getString("htmlManagerServlet.connectorStateTableTitleBSent");
- args[13] =
sm.getString("htmlManagerServlet.connectorStateTableTitleBRecv");
- args[14] =
sm.getString("htmlManagerServlet.connectorStateTableTitleClientForw");
- args[15] =
sm.getString("htmlManagerServlet.connectorStateTableTitleClientAct");
- args[16] =
sm.getString("htmlManagerServlet.connectorStateTableTitleVHost");
- args[17] =
sm.getString("htmlManagerServlet.connectorStateTableTitleRequest");
- args[18] =
sm.getString("htmlManagerServlet.connectorStateHint");
+ args[0] =
smClient.getString("htmlManagerServlet.connectorStateMaxThreads");
+ args[1] =
smClient.getString("htmlManagerServlet.connectorStateThreadCount");
+ args[2] =
smClient.getString("htmlManagerServlet.connectorStateThreadBusy");
+ args[3] =
smClient.getString("htmlManagerServlet.connectorStateAliveSocketCount");
+ args[4] =
smClient.getString("htmlManagerServlet.connectorStateMaxProcessingTime");
+ args[5] =
smClient.getString("htmlManagerServlet.connectorStateProcessingTime");
+ args[6] =
smClient.getString("htmlManagerServlet.connectorStateRequestCount");
+ args[7] =
smClient.getString("htmlManagerServlet.connectorStateErrorCount");
+ args[8] =
smClient.getString("htmlManagerServlet.connectorStateBytesRecieved");
+ args[9] =
smClient.getString("htmlManagerServlet.connectorStateBytesSent");
+ args[10] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleStage");
+ args[11] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleTime");
+ args[12] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleBSent");
+ args[13] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleBRecv");
+ args[14] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleClientForw");
+ args[15] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleClientAct");
+ args[16] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleVHost");
+ args[17] =
smClient.getString("htmlManagerServlet.connectorStateTableTitleRequest");
+ args[18] =
smClient.getString("htmlManagerServlet.connectorStateHint");
// use StatusTransformer to output status
StatusTransformer.writeConnectorState
(writer, objectName,
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=1852916&r1=1852915&r2=1852916&view=diff
==============================================================================
---
tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
(original)
+++
tomcat/trunk/java/org/apache/catalina/manager/host/HTMLHostManagerServlet.java
Mon Feb 4 14:02:18 2019
@@ -330,6 +330,8 @@ public final class HTMLHostManagerServle
smClient.getString("htmlHostManagerServlet.hostsStop");
String hostsRemove =
smClient.getString("htmlHostManagerServlet.hostsRemove");
+ String hostThis =
+ smClient.getString("htmlHostManagerServlet.hostThis");
for (Map.Entry<String, String> entry : sortedHostNamesMap.entrySet()) {
String hostName = entry.getKey();
@@ -357,7 +359,7 @@ public final class HTMLHostManagerServle
writer.print
(MessageFormat.format(HOSTS_ROW_DETAILS_SECTION, args));
- args = new Object[4];
+ args = new Object[5];
if (host.getState().isAvailable()) {
args[0] = response.encodeURL
(request.getContextPath() +
@@ -376,6 +378,7 @@ public final class HTMLHostManagerServle
"/html/remove?name=" +
URLEncoder.encode(hostName, "UTF-8"));
args[3] = hostsRemove;
+ args[4] = hostThis;
if (host == this.installedHost) {
writer.print(MessageFormat.format(
MANAGER_HOST_ROW_BUTTON_SECTION, args));
@@ -493,9 +496,7 @@ public final class HTMLHostManagerServle
private static final String MANAGER_HOST_ROW_BUTTON_SECTION =
" <td class=\"row-left\">\n" +
- " <small>\n" +
- sm.getString("htmlHostManagerServlet.hostThis") +
- " </small>\n" +
+ " <small>{4}</small>\n" +
" </td>\n" +
"</tr>\n";
Modified:
tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java?rev=1852916&r1=1852915&r2=1852916&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/manager/host/HostManagerServlet.java
Mon Feb 4 14:02:18 2019
@@ -213,7 +213,7 @@ public class HostManagerServlet
// Process the requested command
if (command == null) {
- writer.println(sm.getString("hostManagerServlet.noCommand"));
+ writer.println(smClient.getString("hostManagerServlet.noCommand"));
} else if (command.equals("/add")) {
add(request, writer, name, false, smClient);
} else if (command.equals("/remove")) {
@@ -227,7 +227,7 @@ public class HostManagerServlet
} else if (command.equals("/persist")) {
persist(writer, smClient);
} else {
- writer.println(sm.getString("hostManagerServlet.unknownCommand",
+
writer.println(smClient.getString("hostManagerServlet.unknownCommand",
command));
}
Modified: tomcat/trunk/webapps/docs/changelog.xml
URL:
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1852916&r1=1852915&r2=1852916&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Mon Feb 4 14:02:18 2019
@@ -52,6 +52,16 @@
</fix>
</changelog>
</subsection>
+ <subsection name="Web applications">
+ <changelog>
+ <fix>
+ Use client's preferred language for the Server Status page of the
+ Manager web application. Review and fix several cases when the
+ client's language preference was not respected in Manager and
+ Host Manager web applications. (kkolinko)
+ </fix>
+ </changelog>
+ </subsection>
<subsection name="Other">
<changelog>
<update>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]