You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2002/02/13 23:07:53 UTC

cvs commit: jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector ConnectorAction.java

manveen     02/02/13 14:07:53

  Modified:    webapps/admin/WEB-INF/classes/org/apache/webapp/admin
                        ServerAction.java SetUpServerAction.java
               webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector
                        ConnectorAction.java
  Log:
  Throw appropriate exception and error messages when there is a problem getting/setting properties on server mBean or acquiring the mBean itself.
  
  Revision  Changes    Path
  1.4       +55 -39    jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ServerAction.java
  
  Index: ServerAction.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ServerAction.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- ServerAction.java	14 Dec 2001 23:22:33 -0000	1.3
  +++ ServerAction.java	13 Feb 2002 22:07:53 -0000	1.4
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ServerAction.java,v 1.3 2001/12/14 23:22:33 patrickl Exp $
  - * $Revision: 1.3 $
  - * $Date: 2001/12/14 23:22:33 $
  + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/ServerAction.java,v 1.4 2002/02/13 22:07:53 manveen Exp $
  + * $Revision: 1.4 $
  + * $Date: 2002/02/13 22:07:53 $
    *
    * ====================================================================
    *
  @@ -63,6 +63,7 @@
   package org.apache.webapp.admin;
   
   import java.util.Iterator;
  +import java.util.Locale;
   import java.io.IOException;
   import javax.servlet.ServletException;
   import javax.servlet.http.HttpServletRequest;
  @@ -79,23 +80,20 @@
   import javax.management.Query;
   import javax.management.ObjectInstance;
   import javax.management.ObjectName;
  -import javax.management.JMException;
  -import javax.management.MBeanAttributeInfo;
  -import javax.management.MBeanOperationInfo;
  -import javax.management.MBeanInfo;
   import org.apache.struts.util.MessageResources;
   
   /**
  - * Implementation of <strong>Action</strong> that validates a user logon.
  + * Implementation of <strong>Action</strong> that saves server properties.
    *
    * @author Jazmin Jonson
    * @author Manveen Kaur
  - * @version $Revision: 1.3 $ $Date: 2001/12/14 23:22:33 $
  + * @version $Revision: 1.4 $ $Date: 2002/02/13 22:07:53 $
    */
   
   public final class ServerAction extends Action {
       
       private static MBeanServer mBServer = null;
  +    private MessageResources resources = null;
       
       // --------------------------------------------------------- Public Methods
       
  @@ -121,33 +119,45 @@
       HttpServletResponse response)
       throws IOException, ServletException {
           
  -        try{
  -            
  -            // front end validation and checking.
  -            // ===================================================
  -            MessageResources messages = getResources();
  -            
  -            // Validate the request parameters specified by the user
  -            ActionErrors errors = new ActionErrors();
  -            
  -            // Report any errors we have discovered back to the original form
  -            if (!errors.empty()) {
  -                saveErrors(request, errors);
  -                return (new ActionForward(mapping.getInput()));
  -            }
  -            
  -            if(mBServer == null) {
  -                ApplicationServlet servlet = (ApplicationServlet)getServlet();
  -                mBServer = servlet.getServer();
  -            }
  +        if (resources == null) {
  +            resources = getServlet().getResources();
  +        }
  +        Locale locale = (Locale)request.getSession().getAttribute(Action.LOCALE_KEY);
  +        
  +        ActionErrors errors = new ActionErrors();
  +        
  +        // Report any errors we have discovered back to the original form
  +        if (!errors.empty()) {
  +            saveErrors(request, errors);
  +            return (new ActionForward(mapping.getInput()));
  +        }
  +        
  +        // Acquire a reference to the MBeanServer containing our MBeans
  +        try {
  +            mBServer = ((ApplicationServlet) getServlet()).getServer();
  +        } catch (Throwable t) {
  +            throw new ServletException
  +            ("Cannot acquire MBeanServer reference", t);
  +        }
  +        
  +        // Acquire a reference to the Server MBean
  +        ObjectName serverObjName = null;
  +        try {
               Iterator serverItr =
               mBServer.queryMBeans(new ObjectName(TomcatTreeBuilder.SERVER_TYPE +
  -            TomcatTreeBuilder. WILDCARD),
  +            TomcatTreeBuilder.WILDCARD),
               null).iterator();
               
  -            ObjectName serverObjName =
  +            serverObjName =
               ((ObjectInstance)serverItr.next()).getObjectName();
  -            
  +        } catch (Throwable t) {
  +            throw new ServletException
  +            ("Cannot acquire Server MBean reference ", t);
  +        }
  +        
  +        String attribute = null;
  +        // read properties from the mBean
  +        try{
               String shutdownText = request.getParameter("shutdownText");
               String portNumberText = request.getParameter("portNumberText");
               String debugLvlText = request.getParameter("debugLvl");
  @@ -155,7 +165,7 @@
               if(shutdownText != null) {
                   
                   mBServer.setAttribute(serverObjName,
  -                new Attribute(SetUpServerAction.SHUTDOWN_PROP_NAME,
  +                new Attribute(attribute=SetUpServerAction.SHUTDOWN_PROP_NAME,
                   shutdownText));
               }
               
  @@ -163,24 +173,30 @@
                   
                   Integer port = new Integer(portNumberText);
                   mBServer.setAttribute(serverObjName,
  -                new Attribute(SetUpServerAction.PORT_PROP_NAME,
  +                new Attribute(attribute=SetUpServerAction.PORT_PROP_NAME,
                   port));
               }
               
               if(debugLvlText != null) {
                   Integer debugLvl = new Integer(debugLvlText);
                   mBServer.setAttribute(serverObjName,
  -                new Attribute(SetUpServerAction.DEBUG_PROP_NAME,
  +                new Attribute(attribute=SetUpServerAction.DEBUG_PROP_NAME,
                   debugLvl));
               }
  -            
  -        }catch(Throwable t){
  -            t.printStackTrace(System.out);
  -            //forward to error page
  +        } catch(Exception e){
  +            getServlet().log
  +            (resources.getMessage(locale, "users.error.attribute.set",
  +            attribute), e);
  +            response.sendError
  +            (HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
  +            resources.getMessage(locale, "users.error.attribute.set",
  +            attribute));
  +            return (null);
           }
  +        
           if (servlet.getDebug() >= 1)
               servlet.log(" Forwarding to success page");
  -        // Forward back to the test page
  +        // Forward back to the success page
           return (mapping.findForward("Save Successful"));
           
       }
  
  
  
  1.8       +46 -43    jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/SetUpServerAction.java
  
  Index: SetUpServerAction.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/SetUpServerAction.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- SetUpServerAction.java	10 Jan 2002 03:41:13 -0000	1.7
  +++ SetUpServerAction.java	13 Feb 2002 22:07:53 -0000	1.8
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/SetUpServerAction.java,v 1.7 2002/01/10 03:41:13 patrickl Exp $
  - * $Revision: 1.7 $
  - * $Date: 2002/01/10 03:41:13 $
  + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/SetUpServerAction.java,v 1.8 2002/02/13 22:07:53 manveen Exp $
  + * $Revision: 1.8 $
  + * $Date: 2002/02/13 22:07:53 $
    *
    * ====================================================================
    *
  @@ -98,13 +98,14 @@
    *
    * @author Jazmin Jonson
    * @author Manveen Kaur
  - * @version $Revision: 1.7 $ $Date: 2002/01/10 03:41:13 $
  + * @version $Revision: 1.8 $ $Date: 2002/02/13 22:07:53 $
    */
   
   public class SetUpServerAction extends Action {
       
       private static MBeanServer mBServer = null;
  -    
  +    private MessageResources resources = null;
  +
       public final static String PORT_PROP_NAME = "port";
       public final static String SHUTDOWN_PROP_NAME = "shutdown";
       public final static String DEBUG_PROP_NAME = "debug";
  @@ -135,8 +136,11 @@
       throws IOException, ServletException {
           
           HttpSession session = request.getSession();
  +        Locale locale = (Locale) session.getAttribute(Action.LOCALE_KEY);
           
  -        // Do I have to do this part ??
  +        if (resources == null) {
  +            resources = getServlet().getResources();
  +        }        
           if (form == null) {
               getServlet().log(" Creating new ServerForm bean under key "
               + mapping.getAttribute());
  @@ -152,8 +156,6 @@
           // label of the node that was clicked on.
           String nodeLabel = request.getParameter("nodeLabel");
           
  -        // Do transaction stuff before this
  -        
           ServerForm serverFm = (ServerForm) form;
           
           if(debugLvlList == null) {
  @@ -174,59 +176,60 @@
           Integer portNumb = null;
           Integer debug = null;
           String shutdown = null;
  +        
  +        // Acquire a reference to the MBeanServer containing our MBeans
  +        try {
  +            mBServer = ((ApplicationServlet) getServlet()).getServer();
  +        } catch (Throwable t) {
  +            throw new ServletException
  +            ("Cannot acquire MBeanServer reference", t);
  +        }
  +        
  +        ObjectName serverObjName = null;
           try{
  -            
  -            if(mBServer == null) {
  -                ApplicationServlet servlet = (ApplicationServlet)getServlet();
  -                mBServer = servlet.getServer();
  -            }
  -            
               Iterator serverItr =
               mBServer.queryMBeans(new ObjectName(TomcatTreeBuilder.SERVER_TYPE +
  -            TomcatTreeBuilder. WILDCARD),
  +            TomcatTreeBuilder.WILDCARD),
               null).iterator();
               
  -            ObjectName serverObjName =
  -            ((ObjectInstance)serverItr.next()).getObjectName();
  -            
  -            /*
  -            ModelMBeanInfo info = (ModelMBeanInfo) mBServer.getMBeanInfo(serverObjName);
  -            MBeanAttributeInfo attrs[] = info.getAttributes();
  -            for (int i = 0; i < attrs.length; i++)
  -                System.out.println("  AttributeInfo=" + attrs[i]);
  -             
  -            MBeanOperationInfo opers[] = info.getOperations();
  -            for (int i = 0; i < opers.length; i++)
  -                System.out.println("  Operation=" + opers[i]);
  -             */
  -            
  +            serverObjName =
  +            ((ObjectInstance)serverItr.next()).getObjectName();            
  +        } catch (Throwable t) {
  +            throw new ServletException
  +            ("Cannot acquire Server MBean reference ", t);
  +        }
  +        
  +        String attribute = null;
  +        try {
               portNumb = (Integer)mBServer.getAttribute(serverObjName,
  -            PORT_PROP_NAME);
  +            attribute=PORT_PROP_NAME);
               
               debug = (Integer)mBServer.getAttribute(serverObjName,
  -            DEBUG_PROP_NAME);
  +            attribute=DEBUG_PROP_NAME);
               
               shutdown = (String)mBServer.getAttribute(serverObjName,
  -            SHUTDOWN_PROP_NAME);
  -            
  -            request.setAttribute("debugLvlVals", debugLvlList);
  +            attribute=SHUTDOWN_PROP_NAME);
               
  -        }catch(Throwable t){
  -            t.printStackTrace(System.out);
  -            //forward to error page
  +        } catch(Exception e){
  +            getServlet().log
  +            (resources.getMessage(locale, "users.error.attribute.get",
  +            attribute), e);
  +            response.sendError
  +            (HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
  +            resources.getMessage(locale, "users.error.attribute.get",
  +            attribute));
  +            return (null);
           }
           
  +        //setting values obtained from the mBean to be displayed in the form.
           serverFm.setNodeLabel(nodeLabel);        
           serverFm.setPortNumberText(portNumb.toString());
  -        // Hardcode debuglvl for now
           serverFm.setDebugLvl(debug.toString());
           serverFm.setShutdownText(shutdown);
           serverFm.setDebugLvlVals(debugLvlList);
           
  -        // Forward back to the test page
  -        return (mapping.findForward("Server"));
  -        
  +        //forward to the server jsp.
  +        return (mapping.findForward("Server"));        
       }
  -    
  -    
  +        
   }
  
  
  
  1.2       +4 -5      jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorAction.java
  
  Index: ConnectorAction.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorAction.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ConnectorAction.java	13 Feb 2002 00:13:11 -0000	1.1
  +++ ConnectorAction.java	13 Feb 2002 22:07:53 -0000	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorAction.java,v 1.1 2002/02/13 00:13:11 manveen Exp $
  - * $Revision: 1.1 $
  - * $Date: 2002/02/13 00:13:11 $
  + * $Header: /home/cvs/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/connector/ConnectorAction.java,v 1.2 2002/02/13 22:07:53 manveen Exp $
  + * $Revision: 1.2 $
  + * $Date: 2002/02/13 22:07:53 $
    *
    * ====================================================================
    *
  @@ -89,7 +89,7 @@
    * actions on a Connector.
    *
    * @author Manveen Kaur
  - * @version $Revision: 1.1 $ $Date: 2002/02/13 00:13:11 $
  + * @version $Revision: 1.2 $ $Date: 2002/02/13 22:07:53 $
    */
   
   public final class ConnectorAction extends Action {
  @@ -125,8 +125,7 @@
       HttpServletRequest request,
       HttpServletResponse response)
       throws IOException, ServletException {
  -        
  -        
  +                
           if (resources == null) {
               resources = getServlet().getResources();
           }
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>