remm 2003/09/22 05:34:45 Modified: webapps/manager/WEB-INF/classes/org/apache/catalina/manager LocalStrings.properties ManagerServlet.java Log: - Add save command (saves either the full config, or a context config). Revision Changes Path 1.4 +3 -1 jakarta-tomcat-catalina/webapps/manager/WEB-INF/classes/org/apache/catalina/manager/LocalStrings.properties Index: LocalStrings.properties =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/manager/WEB-INF/classes/org/apache/catalina/manager/LocalStrings.properties,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- LocalStrings.properties 28 Jul 2003 14:57:47 -0000 1.3 +++ LocalStrings.properties 22 Sep 2003 12:34:45 -0000 1.4 @@ -17,7 +17,7 @@ htmlManagerServlet.deployPath=Context Path (optional): htmlManagerServlet.deployServer=Deploy directory or WAR file located on server htmlManagerServlet.deployTitle=Deploy -htmlManagerServlet.deployUpload=Upload a WAR file to deploy +htmlManagerServlet.deployUpload=WAR file to deploy htmlManagerServlet.deployUploadFail=FAIL - Deploy Upload Failed, Exception: {0} htmlManagerServlet.deployUploadFile=Select WAR file to upload htmlManagerServlet.deployUploadNotWar=FAIL - File uploaded \"{0}\" must be a .war @@ -63,6 +63,8 @@ managerServlet.resourcesType=OK - Listed global resources of type {0} managerServlet.rolesList=OK - Listed security roles managerServlet.saveFail=FAIL - Configuration save failed: {0} +managerServlet.saved=OK - Server configuration saved +managerServlet.savedContext=OK - Context {0} configuration saved managerServlet.sessiondefaultmax=Default maximum session inactive interval {0} minutes managerServlet.sessiontimeout={0} minutes:{1} sessions managerServlet.sessions=OK - Session information for application at context path {0} 1.11 +62 -8 jakarta-tomcat-catalina/webapps/manager/WEB-INF/classes/org/apache/catalina/manager/ManagerServlet.java Index: ManagerServlet.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/manager/WEB-INF/classes/org/apache/catalina/manager/ManagerServlet.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- ManagerServlet.java 19 Sep 2003 14:17:24 -0000 1.10 +++ ManagerServlet.java 22 Sep 2003 12:34:45 -0000 1.11 @@ -382,6 +382,8 @@ resources(writer, type); } else if (command.equals("/roles")) { roles(writer); + } else if (command.equals("/save")) { + save(writer, path); } else if (command.equals("/serverinfo")) { serverinfo(writer); } else if (command.equals("/sessions")) { @@ -536,6 +538,55 @@ /** + * Store server configuration. + * + * @param path Optional context path to save + */ + protected synchronized void save(PrintWriter writer, String path) { + + Server server = ServerFactory.getServer(); + + if (!(server instanceof StandardServer)) { + writer.println(sm.getString("managerServlet.saveFail", server)); + return; + } + + if ((path == null) || path.length() == 0 || !path.startsWith("/")) { + try { + ((StandardServer) server).storeConfig(); + writer.println(sm.getString("managerServlet.saved")); + } catch (Exception e) { + log("managerServlet.storeConfig", e); + writer.println(sm.getString("managerServlet.exception", + e.toString())); + return; + } + } else { + String contextPath = path; + if (path.equals("/")) { + contextPath = ""; + } + Context context = deployer.findDeployedApp(contextPath); + if (context == null) { + writer.println(sm.getString("managerServlet.noContext", path)); + return; + } + try { + ((StandardServer) server).storeContext(context); + writer.println(sm.getString("managerServlet.savedContext", + path)); + } catch (Exception e) { + log("managerServlet.save[" + path + "]", e); + writer.println(sm.getString("managerServlet.exception", + e.toString())); + return; + } + } + + } + + + /** * Deploy a web application archive (included in the current request) * at the specified context path. * @@ -957,15 +1008,17 @@ try { Context context = deployer.findDeployedApp(path); if (context == null) { - writer.println(sm.getString("managerServlet.noContext", displayPath)); - return; + writer.println(sm.getString + ("managerServlet.noContext", displayPath)); + return; } DirContext resources = context.getResources(); if (resources instanceof ProxyDirContext) { resources = ((ProxyDirContext) resources).getDirContext(); } if (resources instanceof WARDirContext) { - writer.println(sm.getString("managerServlet.noReload", displayPath)); + writer.println(sm.getString + ("managerServlet.noReload", displayPath)); return; } // It isn't possible for the manager to reload itself @@ -974,7 +1027,8 @@ return; } context.reload(); - writer.println(sm.getString("managerServlet.reloaded", displayPath)); + writer.println + (sm.getString("managerServlet.reloaded", displayPath)); } catch (Throwable t) { log("ManagerServlet.reload[" + displayPath + "]", t); writer.println(sm.getString("managerServlet.exception",
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]