manveen 02/04/26 12:05:13 Modified: webapps/admin/WEB-INF/classes/org/apache/webapp/admin Lists.java webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector AddConnectorAction.java webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service DeleteServiceAction.java EditServiceAction.java ServiceForm.java webapps/admin/connector connector.jsp webapps/admin/server server.jsp webapps/admin/service service.jsp services.jsp Log: * Added a check that cannot delete the service the admin tool is running on from the tool. * Added methods to get the name of the service. Revision Changes Path 1.8 +34 -4 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/Lists.java Index: Lists.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/Lists.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- Lists.java 11 Apr 2002 07:44:22 -0000 1.7 +++ Lists.java 26 Apr 2002 19:05:12 -0000 1.8 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/Lists.java,v 1.7 2002/04/11 07:44:22 manveen Exp $ - * $Revision: 1.7 $ - * $Date: 2002/04/11 07:44:22 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/Lists.java,v 1.8 2002/04/26 19:05:12 manveen Exp $ + * $Revision: 1.8 $ + * $Date: 2002/04/26 19:05:12 $ * * ==================================================================== * @@ -66,6 +66,7 @@ import java.util.Collections; import java.util.Iterator; import java.util.List; +import javax.servlet.http.HttpServletRequest; import javax.management.MBeanServer; import javax.management.ObjectName; @@ -77,7 +78,7 @@ * is returned. * * @author Craig R. McClanahan - * @version $Revision: 1.7 $ $Date: 2002/04/11 07:44:22 $ + * @version $Revision: 1.8 $ $Date: 2002/04/26 19:05:12 $ */ public class Lists { @@ -598,5 +599,34 @@ } + /** + * Return the <code>Service</code> object name string + * that the admin app belongs to. + * + * @param mbserver MBeanServer from which to retrieve the list + * @param request Http request + * + * @exception Exception if thrown while retrieving the list + */ + public static String getAdminAppService(MBeanServer mbserver, + String domain, HttpServletRequest request) + throws Exception { + // Get the admin app's service name + StringBuffer sb = new StringBuffer(domain); + sb.append(":type=Context"); + sb.append(",path="); + sb.append(request.getContextPath()); + sb.append(",host="); + sb.append(request.getServerName()); + sb.append(",*"); + ObjectName search = new ObjectName(sb.toString()); + Iterator names = mbserver.queryNames(search, null).iterator(); + String service = null; + while (names.hasNext()) { + service = ((ObjectName)names.next()).getKeyProperty("service"); + } + return service; + } + } 1.5 +9 -5 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/AddConnectorAction.java Index: AddConnectorAction.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/AddConnectorAction.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- AddConnectorAction.java 26 Apr 2002 07:04:14 -0000 1.4 +++ AddConnectorAction.java 26 Apr 2002 19:05:12 -0000 1.5 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/AddConnectorAction.java,v 1.4 2002/04/26 07:04:14 manveen Exp $ - * $Revision: 1.4 $ - * $Date: 2002/04/26 07:04:14 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/AddConnectorAction.java,v 1.5 2002/04/26 19:05:12 manveen Exp $ + * $Revision: 1.5 $ + * $Date: 2002/04/26 19:05:12 $ * * ==================================================================== * @@ -82,7 +82,7 @@ * The <code>Action</code> that sets up <em>Add Connector</em> transactions. * * @author Manveen Kaur - * @version $Revision: 1.4 $ $Date: 2002/04/26 07:04:14 $ + * @version $Revision: 1.5 $ $Date: 2002/04/26 19:05:12 $ */ public class AddConnectorAction extends Action { @@ -139,7 +139,11 @@ connectorFm.setConnectorType(type); connectorFm.setDebugLvl("0"); connectorFm.setServiceName(serviceName); - connectorFm.setScheme("http"); + if ("HTTPS".equalsIgnoreCase(type)) { + connectorFm.setScheme("https"); + } else { + connectorFm.setScheme("http"); + } connectorFm.setAcceptCountText("10"); connectorFm.setConnTimeOutText("60000"); connectorFm.setBufferSizeText("2048"); 1.6 +22 -5 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/DeleteServiceAction.java Index: DeleteServiceAction.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/DeleteServiceAction.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- DeleteServiceAction.java 7 Mar 2002 02:48:54 -0000 1.5 +++ DeleteServiceAction.java 26 Apr 2002 19:05:12 -0000 1.6 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/DeleteServiceAction.java,v 1.5 2002/03/07 02:48:54 craigmcc Exp $ - * $Revision: 1.5 $ - * $Date: 2002/03/07 02:48:54 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/DeleteServiceAction.java,v 1.6 2002/04/26 19:05:12 manveen Exp $ + * $Revision: 1.6 $ + * $Date: 2002/04/26 19:05:12 $ * * ==================================================================== * @@ -91,12 +91,13 @@ import org.apache.webapp.admin.ApplicationServlet; import org.apache.webapp.admin.TomcatTreeBuilder; +import org.apache.webapp.admin.Lists; /** * The <code>Action</code> that sets up <em>Delete Services</em> transactions. * * @author Manveen Kaur - * @version $Revision: 1.5 $ $Date: 2002/03/07 02:48:54 $ + * @version $Revision: 1.6 $ $Date: 2002/04/26 19:05:12 $ */ public class DeleteServiceAction extends Action { @@ -153,6 +154,22 @@ ("Cannot acquire MBeanServer reference", t); } + String adminService = null; + // Get the service name the admin app runs on + // this service cannot be deleted from the admin tool + try { + adminService = Lists.getAdminAppService( + mBServer, "Catalina" ,request); + } catch (Exception e) { + String message = + resources.getMessage("error.serviceName.bad", + adminService); + getServlet().log(message); + response.sendError(HttpServletResponse.SC_BAD_REQUEST, message); + return (null); + } + request.setAttribute("adminAppService", adminService); + // Set up a form bean containing the currently selected // objects to be deleted ServicesForm servicesForm = new ServicesForm(); @@ -183,7 +200,7 @@ return (null); } Collections.sort(list); - request.setAttribute("servicesList", list); + request.setAttribute("servicesList", list); // Forward to the list display page return (mapping.findForward("Services")); 1.4 +21 -4 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/EditServiceAction.java Index: EditServiceAction.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/EditServiceAction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- EditServiceAction.java 8 Mar 2002 00:12:30 -0000 1.3 +++ EditServiceAction.java 26 Apr 2002 19:05:12 -0000 1.4 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/EditServiceAction.java,v 1.3 2002/03/08 00:12:30 craigmcc Exp $ - * $Revision: 1.3 $ - * $Date: 2002/03/08 00:12:30 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/EditServiceAction.java,v 1.4 2002/04/26 19:05:12 manveen Exp $ + * $Revision: 1.4 $ + * $Date: 2002/04/26 19:05:12 $ * * ==================================================================== * @@ -91,7 +91,7 @@ * The <code>Action</code> that sets up <em>Edit Service</em> transactions. * * @author Manveen Kaur - * @version $Revision: 1.3 $ $Date: 2002/03/08 00:12:30 $ + * @version $Revision: 1.4 $ $Date: 2002/04/26 19:05:12 $ */ public class EditServiceAction extends Action { @@ -175,6 +175,22 @@ return (null); } + String adminService = null; + // Get the service name the admin app runs on + // this service cannot be deleted from the admin tool + try { + adminService = Lists.getAdminAppService( + mBServer, sname.getDomain(),request); + } catch (Exception e) { + String message = + resources.getMessage("error.serviceName.bad", + adminService); + getServlet().log(message); + response.sendError(HttpServletResponse.SC_BAD_REQUEST, message); + return (null); + } + + // Fill in the form values for display and editing ServiceForm serviceFm = new ServiceForm(); session.setAttribute("serviceForm", serviceFm); @@ -185,6 +201,7 @@ sb.append(sname.getKeyProperty("name")); sb.append(")"); serviceFm.setNodeLabel(sb.toString()); + serviceFm.setAdminServiceName(adminService); serviceFm.setDebugLvlVals(Lists.getDebugLevels()); String attribute = null; try { 1.6 +31 -6 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/ServiceForm.java Index: ServiceForm.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/ServiceForm.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- ServiceForm.java 8 Mar 2002 00:12:30 -0000 1.5 +++ ServiceForm.java 26 Apr 2002 19:05:12 -0000 1.6 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/ServiceForm.java,v 1.5 2002/03/08 00:12:30 craigmcc Exp $ - * $Revision: 1.5 $ - * $Date: 2002/03/08 00:12:30 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/service/ServiceForm.java,v 1.6 2002/04/26 19:05:12 manveen Exp $ + * $Revision: 1.6 $ + * $Date: 2002/04/26 19:05:12 $ * * ==================================================================== * @@ -73,7 +73,7 @@ * Form bean for the service page. * * @author Manveen Kaur - * @version $Revision: 1.5 $ $Date: 2002/03/08 00:12:30 $ + * @version $Revision: 1.6 $ $Date: 2002/04/26 19:05:12 $ */ public final class ServiceForm extends ActionForm { @@ -119,7 +119,11 @@ * The text for the debug level. */ private String debugLvl = "0"; - + + /** + * The name of the service the admin app runs on. + */ + private String adminServiceName = null; /** * The text for the defaultHost Name. @@ -305,7 +309,25 @@ this.serviceName = serviceName; } - + + /** + * Return the name of the service the admin app runs on. + */ + public String getAdminServiceName() { + + return this.adminServiceName; + + } + + /** + * Set the name of the service the admin app runs on. + */ + public void setAdminServiceName(String adminServiceName) { + + this.adminServiceName = adminServiceName; + + } + /** * Return the default Host. */ @@ -339,6 +361,7 @@ this.objectName = null; this.serviceName = null; this.engineName = null; + this.adminServiceName = null; this.debugLvl = "0"; this.defaultHost = null; } @@ -363,6 +386,8 @@ sb.append(objectName); sb.append("',serviceName="); sb.append(serviceName); + sb.append("',adminServiceName="); + sb.append(adminServiceName); sb.append("]"); return (sb.toString()); 1.8 +3 -3 jakarta-tomcat-4.0/webapps/admin/connector/connector.jsp Index: connector.jsp =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/connector/connector.jsp,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- connector.jsp 26 Apr 2002 07:02:15 -0000 1.7 +++ connector.jsp 26 Apr 2002 19:05:12 -0000 1.8 @@ -199,7 +199,7 @@ </controls:data> </controls:row> -<%-- The following properties are supported only for Coyote Connectors --%> +<%-- The following properties are supported only for Coyote HTTP/1.1 Connectors --%> <logic:notEqual name="connectorForm" property="connectorType" scope="session" value="Ajp13Connector"> <logic:notEqual name="connectorForm" property="connectorType" scope="session" @@ -226,8 +226,8 @@ </logic:notEqual> <%-- The following properties are supported only on HTTPS Connector --%> - <logic:equal name="connectorForm" property="connectorType" scope="session" - value="HTTPS"> + <logic:equal name="connectorForm" property="scheme" scope="session" + value="https"> <br> <controls:row header="true" labelStyle="table-header-text" dataStyle="table-header-text"> <controls:label>Factory Properties:</controls:label> 1.3 +2 -2 jakarta-tomcat-4.0/webapps/admin/server/server.jsp Index: server.jsp =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/server/server.jsp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- server.jsp 5 Apr 2002 00:02:19 -0000 1.2 +++ server.jsp 26 Apr 2002 19:05:12 -0000 1.3 @@ -34,10 +34,10 @@ <controls:action> --------------------------------- </controls:action> - <controls:action url="AddService.do"> + <controls:action url="/AddService.do"> <bean:message key="actions.services.create"/> </controls:action> - <controls:action url="DeleteService.do"> + <controls:action url="/DeleteService.do"> <bean:message key="actions.services.deletes"/> </controls:action> </controls:actions> 1.14 +5 -0 jakarta-tomcat-4.0/webapps/admin/service/service.jsp Index: service.jsp =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/service/service.jsp,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- service.jsp 16 Apr 2002 17:04:19 -0000 1.13 +++ service.jsp 26 Apr 2002 19:05:12 -0000 1.14 @@ -25,6 +25,8 @@ <html:hidden property="adminAction"/> <html:hidden property="objectName"/> <html:hidden property="engineObjectName"/> + <bean:define id="adminServiceName" type="java.lang.String" + name="serviceForm" property="adminServiceName"/> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr class="page-title-row"> @@ -100,6 +102,8 @@ URLEncoder.encode(thisObjectName) %>'> <bean:message key="actions.valves.deletes"/> </controls:action> + <%-- cannot delete the service the admin app runs on --%> + <logic:notEqual name="serviceName" value='<%= adminServiceName %>'> <controls:action disabled="true"> ------------------------------------- </controls:action> @@ -107,6 +111,7 @@ URLEncoder.encode(thisObjectName) %>'> <bean:message key="actions.services.delete"/> </controls:action> + </logic:notEqual> </logic:notEqual> </controls:actions> </div> 1.2 +13 -0 jakarta-tomcat-4.0/webapps/admin/service/services.jsp Index: services.jsp =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/service/services.jsp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- services.jsp 7 Mar 2002 02:48:54 -0000 1.1 +++ services.jsp 26 Apr 2002 19:05:12 -0000 1.2 @@ -64,8 +64,15 @@ <logic:iterate name="servicesList" id="service"> <tr class="line-row"> <td><div align="left" class="table-normal-text"> + <logic:match name="service" + value='<%= (String)request.getAttribute("adminAppService") %>'> + <font color='red'>*</font> + </logic:match> + <logic:notMatch name="service" + value='<%= (String)request.getAttribute("adminAppService") %>'> <html:multibox property="services" value="<%= service.toString() %>"/> + </logic:notMatch> </div></td> <td><div align="left" class="table-normal-text"> <html:link page='<%= "/EditService.do?select=" + @@ -80,6 +87,12 @@ </td></tr> </table> + +<br> +<font color='red'> * </font> +Cannot delete the service the admin application is running on. + +<br> <%@ include file="../buttons.jsp" %>
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>