Hi, Please add these files to the HEAD branch.
Added functionality (end-to-end) for displaying/modifying services. New files: service.jsp goes into webapps/admin *.java go into webapps/admin/WEB-INF/classes/org/apache/webapp/admin Thanks, --Manveen
ServiceForm.java
Description: Binary data
SetUpServiceAction.java
Description: Binary data
ServiceAction.java
Description: Binary data
service.jsp
Description: Binary data
Index: WEB-INF/struts-config.xml =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/struts-config.xml,v retrieving revision 1.10 diff -u -r1.10 struts-config.xml --- WEB-INF/struts-config.xml 2001/12/06 23:49:19 1.10 +++ WEB-INF/struts-config.xml 2001/12/14 18:38:11 @@ -19,6 +19,10 @@ <form-bean name="serverForm" type="org.apache.webapp.admin.ServerForm"/> + <!-- Service form bean --> + <form-bean name="serviceForm" + type="org.apache.webapp.admin.ServiceForm"/> + <!-- Set Locale form bean --> <form-bean name="setLocaleForm" type="org.apache.webapp.admin.SetLocaleForm"/> @@ -50,6 +54,10 @@ path="/server.jsp" redirect="false"/> + <forward name="Service" + path="/service.jsp" + redirect="false"/> + <forward name="Save Successful" path="/saved.jsp" redirect="false"/> @@ -77,7 +85,7 @@ redirect="true"/> </action> - <!-- Set up Tree datastructure --> + <!-- Set up Server --> <action path="/setUpServer" type="org.apache.webapp.admin.SetUpServerAction" name="serverForm" @@ -87,6 +95,16 @@ redirect="true"/> </action> + <!-- Set up Service datastructure --> + <action path="/setUpService" + type="org.apache.webapp.admin.SetUpServiceAction" + name="serviceForm" + scope="session"> + <forward name="SetUpService" + path="/service.jsp" + redirect="true"/> + </action> + <!-- Log out of the application --> <action path="/logOut" type="org.apache.webapp.admin.LogOutAction"> @@ -101,6 +119,14 @@ name="serverForm" scope="session" input="/server.jsp"> + </action> + + <!-- Process a user server change --> + <action path="/service" + type="org.apache.webapp.admin.ServiceAction" + name="serviceForm" + scope="session" + input="/service.jsp"> </action> <!-- Process a set-locale action --> cvs server: Diffing WEB-INF/classes cvs server: Diffing WEB-INF/classes/org cvs server: Diffing WEB-INF/classes/org/apache cvs server: Diffing WEB-INF/classes/org/apache/webapp cvs server: Diffing WEB-INF/classes/org/apache/webapp/admin Index: WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_en.properties =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_en.properties,v retrieving revision 1.6 diff -u -r1.6 ApplicationResources_en.properties --- WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_en.properties 2001/12/11 22:54:12 1.6 +++ WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_en.properties +2001/12/14 18:38:11 @@ -30,3 +30,11 @@ error.shutdownText.length=<li>Shutdown Text must be atleast 6 characters</li> error.portNumber.format=<li>PortNumber not a valid integer!</li> error.portNumber.range=<li>PortNumber seems out of range. Valid range is 1-65535. </li> +error.engineName.required=<li>Engine name is required</li> +service.service=Service +service.name=Name +service.engine.props=Engine properties +service.defaulthostname=Default Hostname +service.properties=Service Properties +service.property=Property +service.value=Value Index: WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_es.properties =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_es.properties,v retrieving revision 1.8 diff -u -r1.8 ApplicationResources_es.properties --- WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_es.properties 2001/12/12 18:25:43 1.8 +++ WEB-INF/classes/org/apache/webapp/admin/ApplicationResources_es.properties +2001/12/14 18:38:11 @@ -30,3 +30,11 @@ error.shutdownText.length=<li>El texto de la para Detener debe ser de al menos 6 caracteres!</li> error.portNumber.format=<li>El numero de puerto es un entero no valido! </li> error.portNumber.range=<li>El numero de puerto esta fuera del rango. El rango valido es 1-65535.</li> +error.engineName.required=<li>Se requiere el nombre del motor</li> +service.service=Mantienen +service.name=Nombre +service.engine.props=Caracteristicas del motor +service.defaulthostname=Hostname del valor por defecto +service.properties=Mantenga Las Caracteristicas +service.property=Caracteristica +service.value=Valor Index: WEB-INF/classes/org/apache/webapp/admin/ServerAction.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ServerAction.java,v retrieving revision 1.2 diff -u -r1.2 ServerAction.java --- WEB-INF/classes/org/apache/webapp/admin/ServerAction.java 2001/12/11 22:54:12 1.2 +++ WEB-INF/classes/org/apache/webapp/admin/ServerAction.java 2001/12/14 18:38:11 @@ -121,8 +121,6 @@ HttpServletResponse response) throws IOException, ServletException { - System.out.println(mapping.getInput()); - try{ // front end validation and checking. Index: WEB-INF/classes/org/apache/webapp/admin/ServerForm.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ServerForm.java,v retrieving revision 1.2 diff -u -r1.2 ServerForm.java --- WEB-INF/classes/org/apache/webapp/admin/ServerForm.java 2001/12/11 22:54:12 1.2 +++ WEB-INF/classes/org/apache/webapp/admin/ServerForm.java 2001/12/14 18:38:11 @@ -59,7 +59,6 @@ * */ - package org.apache.webapp.admin; @@ -134,7 +133,7 @@ } /** - * Set the portNumberText. + * Set the ActionVals. */ public void setActionVals(ArrayList actionVals) { Index: WEB-INF/classes/org/apache/webapp/admin/TomcatTreeBuilder.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/TomcatTreeBuilder.java,v retrieving revision 1.2 diff -u -r1.2 TomcatTreeBuilder.java --- WEB-INF/classes/org/apache/webapp/admin/TomcatTreeBuilder.java 2001/12/06 22:57:54 1.2 +++ WEB-INF/classes/org/apache/webapp/admin/TomcatTreeBuilder.java 2001/12/14 +18:38:11 @@ -84,34 +84,36 @@ import javax.management.JMException; import javax.management.MBeanAttributeInfo; import javax.management.MBeanInfo; - + /** - * <p> Implementation of TreeBuilder interface for Tomcat Tree Controller + * <p> Implementation of TreeBuilder interface for Tomcat Tree Controller * to build plugin components into the tree * * @author Jazmin Jonson - * @version + * @author Manveen Kaur + * @version */ public class TomcatTreeBuilder implements TreeBuilder{ - + // This SERVER_LABEL needs to be localized private final static String SERVER_LABEL = "Tomcat Server"; - + public final static String SERVER_TYPE = "Catalina:type=Server"; - private final static String SERVICE_TYPE = "Catalina:type=Service"; - private final static String ENGINE_TYPE = "Engine"; + public final static String SERVICE_TYPE = "Catalina:type=Service"; + public final static String ENGINE_TYPE = "Catalina:type=Engine"; private final static String CONNECTOR_TYPE = "Catalina:type=Connector"; + public final static String HOST_TYPE = "Catalina:type=Host"; public final static String WILDCARD = ",*"; - + private static MBeanServer mBServer = null; - + public void buildTree(TreeControl treeControl, - ApplicationServlet servlet, - HttpServletRequest request) { - + ApplicationServlet servlet, + HttpServletRequest request) { + try { mBServer = servlet.getServer(); TreeControlNode root = treeControl.getRoot(); @@ -120,113 +122,113 @@ getServices(server); }catch(Throwable t){ t.printStackTrace(System.out); - } + } } - - public TreeControlNode getServer() - throws JMException, ServletException { - - Iterator serverItr = - mBServer.queryMBeans(new ObjectName(SERVER_TYPE + WILDCARD), - null).iterator(); - String serverObjName = - (((ObjectInstance)serverItr.next()).getObjectName()).toString(); - + + public TreeControlNode getServer() + throws JMException, ServletException { + + Iterator serverItr = + mBServer.queryMBeans(new ObjectName(SERVER_TYPE + WILDCARD), + null).iterator(); + String serverObjName = + (((ObjectInstance)serverItr.next()).getObjectName()).toString(); + // HACK to take into account special characters like = and & // in the node name, could remove this code if encode URL // and later request.getParameter() could deal with = and & // character in parameter values. Decoding name not needed // because Tomcat does this automatically - - String encodedServerName = URLEncoder.encode(serverObjName); + + String encodedServerName = URLEncoder.encode(serverObjName); TreeControlNode serverNode = - new TreeControlNode(serverObjName, - "folder_16_pad.gif", SERVER_LABEL, - "setUpServer.do?select=" + encodedServerName, - "content", true); - + new TreeControlNode(serverObjName, + "folder_16_pad.gif", SERVER_LABEL, + "setUpServer.do?select=" + encodedServerName, + "content", true); + return serverNode; - + } - - - public void getServices(TreeControlNode serverNode) - throws JMException, ServletException { - - Iterator serviceItr = - mBServer.queryMBeans(new ObjectName(SERVICE_TYPE + WILDCARD) , - null).iterator(); - + + + public void getServices(TreeControlNode serverNode) + throws JMException, ServletException { + + Iterator serviceItr = + mBServer.queryMBeans(new ObjectName(SERVICE_TYPE + WILDCARD) , + null).iterator(); + String encodedServiceName; - + while(serviceItr.hasNext()){ ObjectInstance service = (ObjectInstance)serviceItr.next(); - - String serviceName = - (String)mBServer.getAttribute(service.getObjectName(),"name"); - + + String serviceName = + (String)mBServer.getAttribute(service.getObjectName(),"name"); + // HACK to take into account special characters like = and & // in the node name, could remove this code if encode URL // and later request.getParameter() could deal with = and & // character in parameter values. Decoding name not needed - // because Tomcat does this automatically - + // because Tomcat does this automatically + encodedServiceName = URLEncoder.encode(service.getObjectName().toString()); - - TreeControlNode serviceNode = - new TreeControlNode(service.getObjectName().toString(), - "folder_16_pad.gif", - "Service(" + serviceName + ")", - "treeControlTest.do?select=" + encodedServiceName, - null, true); - + + TreeControlNode serviceNode = + new TreeControlNode(service.getObjectName().toString(), + "folder_16_pad.gif", + "Service(" + serviceName + ")", + "setUpService.do?select=" + encodedServiceName, + "content", true); + serverNode.addChild(serviceNode); - + getConnectors(serviceNode, serviceName); } } - - public void getConnectors(TreeControlNode serviceNode, - String serviceName) - - throws JMException{ - - - Iterator ConnectorItr = - (mBServer.queryMBeans(new ObjectName(CONNECTOR_TYPE + WILDCARD + - ",service=" + serviceName), - null)).iterator(); - + + public void getConnectors(TreeControlNode serviceNode, + String serviceName) + + throws JMException{ + + + Iterator ConnectorItr = + (mBServer.queryMBeans(new ObjectName(CONNECTOR_TYPE + WILDCARD + + ",service=" + serviceName), + null)).iterator(); + TreeControlNode connectorNode = null; String encodedConnectorName; - - while(ConnectorItr.hasNext()){ - + + while(ConnectorItr.hasNext()){ + ObjectInstance connectorObj = (ObjectInstance)ConnectorItr.next(); - - String connectorName = - (String)mBServer.getAttribute(connectorObj.getObjectName(), - "scheme"); - + + String connectorName = + (String)mBServer.getAttribute(connectorObj.getObjectName(), + "scheme"); + // HACK to take into account special characters like = and & // in the node name, could remove this code if encode URL // and later request.getParameter() could deal with = and & // character in parameter values. Decoding name not needed - // because Tomcat does this automatically - + // because Tomcat does this automatically + encodedConnectorName = URLEncoder.encode(connectorObj.getObjectName().toString()); - - connectorNode = - new TreeControlNode(connectorObj.getObjectName().toString(), - "folder_16_pad.gif", - "Connector(" + connectorName + ")", - "treeControlTest.do?select=" + - encodedConnectorName, - null, true); - + + connectorNode = + new TreeControlNode(connectorObj.getObjectName().toString(), + "folder_16_pad.gif", + "Connector(" + connectorName + ")", + "treeControlTest.do?select=" + + encodedConnectorName, + null, true); + serviceNode.addChild(connectorNode); } - - } - -} + + } + +}
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>