manveen 02/04/25 16:28:00 Modified: webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector AddConnectorAction.java ConnectorForm.java EditConnectorAction.java SaveConnectorAction.java Log: Added support for SSL. Revision Changes Path 1.2 +27 -8 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.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- AddConnectorAction.java 3 Apr 2002 23:35:35 -0000 1.1 +++ AddConnectorAction.java 25 Apr 2002 23:27:59 -0000 1.2 @@ -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.1 2002/04/03 23:35:35 manveen Exp $ - * $Revision: 1.1 $ - * $Date: 2002/04/03 23:35:35 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/AddConnectorAction.java,v 1.2 2002/04/25 23:27:59 manveen Exp $ + * $Revision: 1.2 $ + * $Date: 2002/04/25 23:27:59 $ * * ==================================================================== * @@ -82,7 +82,7 @@ * The <code>Action</code> that sets up <em>Add Connector</em> transactions. * * @author Manveen Kaur - * @version $Revision: 1.1 $ $Date: 2002/04/03 23:35:35 $ + * @version $Revision: 1.2 $ $Date: 2002/04/25 23:27:59 $ */ public class AddConnectorAction extends Action { @@ -135,7 +135,8 @@ connectorFm.setConnectorName(""); String type = request.getParameter("type"); if (type == null) - type = "CoyoteConnector"; // default type is CoyoteConnector + //type = "CoyoteConnector"; // default type is CoyoteConnector + type = "HTTP"; // default type is HTTP connectorFm.setConnectorType(type); connectorFm.setDebugLvl("0"); connectorFm.setServiceName(serviceName); @@ -149,7 +150,10 @@ connectorFm.setRedirectPortText("-1"); connectorFm.setMinProcessorsText("5"); connectorFm.setMaxProcessorsText("20"); - + connectorFm.setClientAuthentication("false"); + connectorFm.setKeyStoreFileName(""); + connectorFm.setKeyStorePassword(""); + // should be set only for Coyote, not supported by all connector types if ("CoyoteConnector".equalsIgnoreCase(type)) { connectorFm.setProxyName(""); @@ -159,21 +163,36 @@ connectorFm.setDebugLvlVals(Lists.getDebugLevels()); connectorFm.setBooleanVals(Lists.getBooleanValues()); + /* String connectorTypes[] = new String[2]; connectorTypes[0] = "CoyoteConnector"; connectorTypes[1] = "Ajp13Connector"; + */ + String schemeTypes[]= new String[2]; + schemeTypes[0] = "HTTP"; + schemeTypes[1] = "HTTPS"; + ArrayList types = new ArrayList(); // the first element in the select list should be the type selected types.add(new LabelValueBean(type, "/admin/AddConnector.do?serviceName=" + URLEncoder.encode(serviceName) + "&type=" + type)); - for (int i=0; i< connectorTypes.length; i++) { + for (int i=0; i< schemeTypes.length; i++) { + if (!type.equalsIgnoreCase(schemeTypes[i])) { + types.add(new LabelValueBean(schemeTypes[i], + "/admin/AddConnector.do?serviceName=" + URLEncoder.encode(serviceName) + + "&type=" + schemeTypes[i])); + } + /* + for (int i=0; i< connectorTypes.length; i++) { if (!type.equalsIgnoreCase(connectorTypes[i])) { - types.add(new LabelValueBean(connectorTypes[i], + types.add(new LabelValueBean(schemeTypes[i], "/admin/AddConnector.do?serviceName=" + URLEncoder.encode(serviceName) + "&type=" + connectorTypes[i])); } + */ + } connectorFm.setConnectorTypeVals(types); 1.7 +85 -10 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorForm.java Index: ConnectorForm.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorForm.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- ConnectorForm.java 5 Apr 2002 00:02:18 -0000 1.6 +++ ConnectorForm.java 25 Apr 2002 23:27:59 -0000 1.7 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorForm.java,v 1.6 2002/04/05 00:02:18 manveen Exp $ - * $Revision: 1.6 $ - * $Date: 2002/04/05 00:02:18 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorForm.java,v 1.7 2002/04/25 23:27:59 manveen Exp $ + * $Revision: 1.7 $ + * $Date: 2002/04/25 23:27:59 $ * * ==================================================================== * @@ -74,7 +74,7 @@ * Form bean for the connector page. * * @author Manveen Kaur - * @version $Revision: 1.6 $ $Date: 2002/04/05 00:02:18 $ + * @version $Revision: 1.7 $ $Date: 2002/04/25 23:27:59 $ */ public final class ConnectorForm extends ActionForm { @@ -135,7 +135,7 @@ private String bufferSizeText = null; /** - * The value of eanble Lookups. + * The value of enable Lookups. */ private String enableLookups = "false"; @@ -180,7 +180,22 @@ * The text for the connectorName. */ private String connectorName = null; - + + /** + * Whether client authentication is supported. + */ + private String clientAuthentication = "false"; + + /** + * The keyStore Filename. + */ + private String keyStoreFileName = null; + + /** + * The keyStore Password. + */ + private String keyStorePassword = null; + /** * Set of valid values for debug level. */ @@ -424,7 +439,64 @@ this.proxyPortText = proxyPortText; } - + + /** + * Return the true/false value of client authentication. + */ + public String getClientAuthentication() { + + return this.clientAuthentication; + + } + + + /** + * Set whether client authentication is supported or not. + */ + public void setClientAuthentication(String clientAuthentication) { + + this.clientAuthentication = clientAuthentication; + + } + + /** + * Return the object name of the service this connector belongs to. + */ + public String getKeyStoreFileName() { + + return this.keyStoreFileName; + + } + + + /** + * Set the object name of the Service this connector belongs to. + */ + public void setKeyStoreFileName(String keyStoreFileName) { + + this.keyStoreFileName = keyStoreFileName; + + } + + /** + * Return the object name of the service this connector belongs to. + */ + public String getKeyStorePassword() { + + return this.keyStorePassword; + + } + + + /** + * Set the object name of the Service this connector belongs to. + */ + public void setKeyStorePassword(String keyStorePassword) { + + this.keyStorePassword = keyStorePassword; + + } + /** * Return the debugVals. */ @@ -634,6 +706,9 @@ this.redirectPortText = null; this.proxyName = null; this.proxyPortText = null; + this.keyStoreFileName = null; + this.keyStorePassword = null; + this.clientAuthentication = "false"; } @@ -701,9 +776,9 @@ } } - // not supported by all connector types - if ("CoyoteConnector".equalsIgnoreCase(connectorType)) - numberCheck("proxyPortText", proxyPortText, true, 0, 65535); + // supported by both Coyote and JK2 connectors + numberCheck("proxyPortText", proxyPortText, true, 0, 65535); + } return errors; 1.3 +25 -14 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/EditConnectorAction.java Index: EditConnectorAction.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/EditConnectorAction.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- EditConnectorAction.java 3 Apr 2002 23:35:35 -0000 1.2 +++ EditConnectorAction.java 25 Apr 2002 23:27:59 -0000 1.3 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/EditConnectorAction.java,v 1.2 2002/04/03 23:35:35 manveen Exp $ - * $Revision: 1.2 $ - * $Date: 2002/04/03 23:35:35 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/EditConnectorAction.java,v 1.3 2002/04/25 23:27:59 manveen Exp $ + * $Revision: 1.3 $ + * $Date: 2002/04/25 23:27:59 $ * * ==================================================================== * @@ -91,7 +91,7 @@ * The <code>Action</code> that sets up <em>Edit Connector</em> transactions. * * @author Manveen Kaur - * @version $Revision: 1.2 $ $Date: 2002/04/03 23:35:35 $ + * @version $Revision: 1.3 $ $Date: 2002/04/25 23:27:59 $ */ public class EditConnectorAction extends Action { @@ -172,7 +172,6 @@ connectorFm.setNodeLabel(sb.toString()); connectorFm.setDebugLvlVals(Lists.getDebugLevels()); connectorFm.setBooleanVals(Lists.getBooleanValues()); - String attribute = null; try { @@ -224,16 +223,28 @@ connectorFm.setMaxProcessorsText (((Integer) mBServer.getAttribute(cname, attribute)).toString()); - // Supported only by Coyote Connector. - if ("CoyoteConnector".equalsIgnoreCase(connectorType)) { - // Initialize rest of variables. - attribute = "proxyName"; - connectorFm.setProxyName + // Supported by Coyote and JK2 Connectors both. + attribute = "proxyName"; + connectorFm.setProxyName + ((String) mBServer.getAttribute(cname, attribute)); + attribute = "proxyPort"; + connectorFm.setProxyPortText + (((Integer) mBServer.getAttribute(cname, attribute)).toString()); + + if ("HTTPS".equalsIgnoreCase(connectorType)) { + // Initialize rest of variables. + // These are set only for SSL connectors. + attribute = "clientAuth"; + connectorFm.setClientAuthentication + (((Boolean) mBServer.getAttribute(cname, attribute)).toString()); + attribute = "keystoreFile"; + connectorFm.setKeyStoreFileName ((String) mBServer.getAttribute(cname, attribute)); - attribute = "proxyPort"; - connectorFm.setProxyPortText - (((Integer) mBServer.getAttribute(cname, attribute)).toString()); - } + attribute = "keystorePass"; + connectorFm.setKeyStorePassword + ((String) mBServer.getAttribute(cname, attribute)); + } + } catch (Throwable t) { getServlet().log 1.3 +43 -20 jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/SaveConnectorAction.java Index: SaveConnectorAction.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/SaveConnectorAction.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- SaveConnectorAction.java 5 Apr 2002 00:02:18 -0000 1.2 +++ SaveConnectorAction.java 25 Apr 2002 23:27:59 -0000 1.3 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/SaveConnectorAction.java,v 1.2 2002/04/05 00:02:18 manveen Exp $ - * $Revision: 1.2 $ - * $Date: 2002/04/05 00:02:18 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/SaveConnectorAction.java,v 1.3 2002/04/25 23:27:59 manveen Exp $ + * $Revision: 1.3 $ + * $Date: 2002/04/25 23:27:59 $ * * ==================================================================== * @@ -95,7 +95,7 @@ * <em>Edit Connector</em> transactions. * * @author Manveen Kaur - * @version $Revision: 1.2 $ $Date: 2002/04/05 00:02:18 $ + * @version $Revision: 1.3 $ $Date: 2002/04/25 23:27:59 $ */ public final class SaveConnectorAction extends Action { @@ -112,7 +112,6 @@ "int" // port }; - /** * The MBeanServer we will be interacting with. */ @@ -203,8 +202,13 @@ TomcatTreeBuilder.SERVICE_TYPE + ",name=" + serviceName; values[1] = cform.getAddress(); values[2] = new Integer(cform.getPortText()); + + if ("HTTP".equalsIgnoreCase(connectorType)) { + operation = "createCoyoteConnector"; // HTTP + } else { + operation = "createJK2Connector"; // HTTPS + } - operation = "create" + connectorType; cObjectName = (String) mBServer.invoke(fname, operation, values, createStandardConnectorTypes); @@ -330,21 +334,40 @@ mBServer.setAttribute(coname, new Attribute("maxProcessors", new Integer(maxProcessors))); - if("CoyoteConnector".equalsIgnoreCase(connectorType)) { - attribute = "proxyName"; - mBServer.setAttribute(coname, - new Attribute("proxyName", cform.getProxyName())); - attribute = "proxyPort"; - int proxyPort = 0; - try { - proxyPort = Integer.parseInt(cform.getProxyPortText()); - } catch (Throwable t) { - proxyPort = 0; - } + // proxy name and port exist for both Coyote and JK2 Connectors. + attribute = "proxyName"; + mBServer.setAttribute(coname, + new Attribute("proxyName", cform.getProxyName())); + attribute = "proxyPort"; + int proxyPort = 0; + try { + proxyPort = Integer.parseInt(cform.getProxyPortText()); + } catch (Throwable t) { + proxyPort = 0; + } + mBServer.setAttribute(coname, + new Attribute("proxyPort", new Integer(proxyPort))); + + // HTTPS (JK2 connector) specific properties + if("HTTPS".equalsIgnoreCase(connectorType)) { + attribute = "clientAuth"; mBServer.setAttribute(coname, - new Attribute("proxyPort", new Integer(proxyPort))); - } - + new Attribute("clientAuth", new Boolean(cform.getClientAuthentication()))); + + attribute = "keystoreFile"; + String keyFile = cform.getKeyStoreFileName(); + if ((keyFile != null) || (keyFile.length()>0)) + mBServer.setAttribute(coname, + new Attribute("keystoreFile", keyFile)); + + attribute = "keystorePass"; + String keyPass = cform.getKeyStorePassword(); + if ((keyPass != null) || (keyPass.length()>0)) + mBServer.setAttribute(coname, + new Attribute("keystorePass", keyPass)); + // request.setAttribute("warning", "connector.keyPass.warning"); + } + } catch (Exception e) { getServlet().log
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>