You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ve...@apache.org on 2016/05/28 10:22:19 UTC

svn commit: r1745860 - in /axis/axis2/java/core/trunk/modules/webapp/src/main: java/org/apache/axis2/webapp/ webapp/axis2-web/

Author: veithen
Date: Sat May 28 10:22:19 2016
New Revision: 1745860

URL: http://svn.apache.org/viewvc?rev=1745860&view=rev
Log:
Use a smarter way to dispatch to actions in the AxisAdminServlet.

Added:
    axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/Action.java   (with props)
    axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/ActionHandler.java   (with props)
    axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminActions.java
      - copied, changed from r1745826, axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminAgent.java
Removed:
    axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminAgent.java
Modified:
    axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AxisAdminServlet.java
    axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/LeftFrame.jsp
    axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/engagingglobally.jsp

Added: axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/Action.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/Action.java?rev=1745860&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/Action.java (added)
+++ axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/Action.java Sat May 28 10:22:19 2016
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.axis2.webapp;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+@interface Action {
+    String name();
+    boolean authorizationRequired() default true;
+}

Propchange: axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/Action.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/ActionHandler.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/ActionHandler.java?rev=1745860&view=auto
==============================================================================
--- axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/ActionHandler.java (added)
+++ axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/ActionHandler.java Sat May 28 10:22:19 2016
@@ -0,0 +1,64 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.axis2.webapp;
+
+import java.io.IOException;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.axis2.Constants;
+
+final class ActionHandler {
+    private final Object target;
+    private final Method method;
+    private final boolean authorizationRequired;
+
+    ActionHandler(Object target, Method method, boolean authorizationRequired) {
+        this.target = target;
+        this.method = method;
+        this.authorizationRequired = authorizationRequired;
+    }
+
+    void handle(HttpServletRequest request, HttpServletResponse response, boolean securityEnabled) throws IOException, ServletException {
+        if (securityEnabled && authorizationRequired && request.getSession().getAttribute(Constants.LOGGED) == null) {
+            response.sendRedirect("welcome");
+        } else {
+            try {
+                method.invoke(target, request, response);
+            } catch (IllegalAccessException ex) {
+                throw new ServletException(ex);
+            } catch (IllegalArgumentException ex) {
+                throw new ServletException(ex);
+            } catch (InvocationTargetException ex) {
+                Throwable cause = ex.getCause();
+                if (cause instanceof IOException) {
+                    throw (IOException)cause;
+                } else if (cause instanceof ServletException) {
+                    throw (ServletException)cause;
+                } else {
+                    throw new ServletException(cause);
+                }
+            }
+        }
+    }
+}

Propchange: axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/ActionHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminActions.java (from r1745826, axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminAgent.java)
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminActions.java?p2=axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminActions.java&p1=axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminAgent.java&r1=1745826&r2=1745860&rev=1745860&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminAgent.java (original)
+++ axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AdminActions.java Sat May 28 10:22:19 2016
@@ -48,6 +48,7 @@ import javax.xml.namespace.QName;
 import java.io.File;
 import java.io.IOException;
 import java.util.Collection;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -55,7 +56,7 @@ import java.util.Map;
 /**
  * Provides methods to process axis2 admin requests.
  */
-public class AdminAgent extends AbstractAgent {
+final class AdminActions {
     private static final Log log = LogFactory.getLog(AbstractAgent.class);
     /**
      * Field LIST_MULTIPLE_SERVICE_JSP_NAME
@@ -84,10 +85,11 @@ public class AdminAgent extends Abstract
     private static final String ENGAGE_TO_OPERATION_JSP_NAME = "engagingtoanoperation.jsp";
     private static final String LOGIN_JSP_NAME = "Login.jsp";
 
+    private final ConfigurationContext configContext;
     private File serviceDir;
 
-    public AdminAgent(ConfigurationContext aConfigContext) {
-        super(aConfigContext);
+    public AdminActions(ConfigurationContext configContext) {
+        this.configContext = configContext;
         try {
             if (configContext.getAxisConfiguration().getRepository() != null) {
                 File repoDir =
@@ -104,21 +106,20 @@ public class AdminAgent extends Abstract
         }
     }
 
-    @Override
-    public void handle(HttpServletRequest httpServletRequest,
-                       HttpServletResponse httpServletResponse)
-            throws IOException, ServletException {
+    protected void renderView(String jspName, HttpServletRequest httpServletRequest,
+            HttpServletResponse httpServletResponse) throws IOException, ServletException {
+        httpServletResponse.setContentType("text/html");
+        httpServletRequest.getRequestDispatcher(Constants.AXIS_WEB_CONTENT_ROOT + jspName)
+                .include(httpServletRequest, httpServletResponse);
+    }
 
-        // Redirect to the login page if axis2 security is enabled
-        // and the user is not authorized
-        if (!httpServletRequest.getPathInfo().equals("/welcome") && axisSecurityEnabled() && authorizationRequired(httpServletRequest)) {
-            httpServletResponse.sendRedirect("welcome");
-        } else {
-            super.handle(httpServletRequest, httpServletResponse);
-        }
+    protected void populateSessionInformation(HttpServletRequest req) {
+        HashMap services = configContext.getAxisConfiguration().getServices();
+        req.getSession().setAttribute(Constants.SERVICE_MAP, services);
+        req.getSession().setAttribute(Constants.SERVICE_PATH, configContext.getServicePath());
     }
 
-    @Override
+    @Action(name="index")
     public void processIndex(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         renderView(ADMIN_JSP_NAME, req, res);
@@ -126,10 +127,12 @@ public class AdminAgent extends Abstract
 
     // supported web operations
 
+    @Action(name="welcome", authorizationRequired=false)
     public void processWelcome(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {
         renderView(LOGIN_JSP_NAME, req, res);
     }
 
+    @Action(name="upload")
     public void processUpload(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String hasHotDeployment =
@@ -191,7 +194,7 @@ public class AdminAgent extends Abstract
         renderView("upload.jsp", req, res);
     }
 
-
+    @Action(name="login", authorizationRequired=false)
     public void processLogin(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String username = req.getParameter("userName");
@@ -219,6 +222,7 @@ public class AdminAgent extends Abstract
         }
     }
 
+    @Action(name="editServicePara")
     public void processEditServicePara(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String serviceName = req.getParameter("axisService");
@@ -262,6 +266,7 @@ public class AdminAgent extends Abstract
         renderView(SERVICE_PARA_EDIT_JSP_NAME, req, res);
     }
 
+    @Action(name="engagingGlobally")
     public void processEngagingGlobally(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         Map<String,AxisModule> modules = configContext.getAxisConfiguration().getModules();
@@ -287,6 +292,7 @@ public class AdminAgent extends Abstract
 
     }
 
+    @Action(name="listOperations")
     public void processListOperations(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         Map<String,AxisModule> modules = configContext.getAxisConfiguration().getModules();
@@ -333,6 +339,7 @@ public class AdminAgent extends Abstract
         renderView(ENGAGE_TO_OPERATION_JSP_NAME, req, res);
     }
 
+    @Action(name="engageToService")
     public void processEngageToService(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         Map<String,AxisModule> modules = configContext.getAxisConfiguration().getModules();
@@ -366,6 +373,7 @@ public class AdminAgent extends Abstract
         renderView(ENGAGING_MODULE_TO_SERVICE_JSP_NAME, req, res);
     }
 
+    @Action(name="engageToServiceGroup")
     public void processEngageToServiceGroup(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         Map<String,AxisModule> modules = configContext.getAxisConfiguration().getModules();
@@ -398,13 +406,14 @@ public class AdminAgent extends Abstract
         renderView(ENGAGING_MODULE_TO_SERVICE_GROUP_JSP_NAME, req, res);
     }
 
-
+    @Action(name="logout")
     public void processLogout(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         req.getSession().invalidate();
         renderView("index.jsp", req, res);
     }
 
+    @Action(name="viewServiceGroupConetxt")
     public void processviewServiceGroupConetxt(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String type = req.getParameter("TYPE");
@@ -416,6 +425,7 @@ public class AdminAgent extends Abstract
         renderView("viewServiceGroupContext.jsp", req, res);
     }
 
+    @Action(name="viewServiceContext")
     public void processviewServiceContext(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String type = req.getParameter("TYPE");
@@ -434,6 +444,7 @@ public class AdminAgent extends Abstract
         renderView("viewServiceContext.jsp", req, res);
     }
 
+    @Action(name="selectServiceParaEdit")
     public void processSelectServiceParaEdit(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         populateSessionInformation(req);
@@ -441,6 +452,7 @@ public class AdminAgent extends Abstract
         renderView(SELECT_SERVICE_JSP_NAME, req, res);
     }
 
+    @Action(name="listOperation")
     public void processListOperation(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         populateSessionInformation(req);
@@ -449,6 +461,7 @@ public class AdminAgent extends Abstract
         renderView(SELECT_SERVICE_JSP_NAME, req, res);
     }
 
+    @Action(name="activateService")
     public void processActivateService(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         if (req.getParameter("submit") != null) {
@@ -464,6 +477,7 @@ public class AdminAgent extends Abstract
         renderView(ACTIVATE_SERVICE_JSP_NAME, req, res);
     }
 
+    @Action(name="deactivateService")
     public void processDeactivateService(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         if (req.getParameter("submit") != null) {
@@ -482,7 +496,7 @@ public class AdminAgent extends Abstract
         renderView(IN_ACTIVATE_SERVICE_JSP_NAME, req, res);
     }
 
-
+    @Action(name="viewGlobalHandlers")
     public void processViewGlobalHandlers(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         req.getSession().setAttribute(Constants.GLOBAL_HANDLERS,
@@ -491,6 +505,7 @@ public class AdminAgent extends Abstract
         renderView(VIEW_GLOBAL_HANDLERS_JSP_NAME, req, res);
     }
 
+    @Action(name="viewServiceHandlers")
     public void processViewServiceHandlers(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String service = req.getParameter("axisService");
@@ -503,7 +518,7 @@ public class AdminAgent extends Abstract
         renderView(VIEW_SERVICE_HANDLERS_JSP_NAME, req, res);
     }
 
-
+    @Action(name="listPhases")
     public void processListPhases(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         PhasesInfo info = configContext.getAxisConfiguration().getPhasesInfo();
@@ -511,6 +526,7 @@ public class AdminAgent extends Abstract
         renderView(LIST_PHASES_JSP_NAME, req, res);
     }
 
+    @Action(name="listServiceGroups")
     public void processListServiceGroups(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         Iterator<AxisServiceGroup> serviceGroups = configContext.getAxisConfiguration().getServiceGroups();
@@ -520,6 +536,7 @@ public class AdminAgent extends Abstract
         renderView(LIST_SERVICE_GROUP_JSP, req, res);
     }
 
+    @Action(name="listService")
     public void processListService(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         populateSessionInformation(req);
@@ -529,6 +546,7 @@ public class AdminAgent extends Abstract
         renderView(LIST_SERVICES_JSP_NAME, req, res);
     }
 
+    @Action(name="listSingleService")
     public void processListSingleService(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         req.getSession().setAttribute(Constants.IS_FAULTY, ""); //Clearing out any old values.
@@ -540,13 +558,14 @@ public class AdminAgent extends Abstract
         renderView(LIST_SINGLE_SERVICES_JSP_NAME, req, res);
     }
 
-
+    @Action(name="listContexts")
     public void processListContexts(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         req.getSession().setAttribute(Constants.CONFIG_CONTEXT, configContext);
         renderView("ViewContexts.jsp", req, res);
     }
 
+    @Action(name="globalModules")
     public void processglobalModules(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         Collection<AxisModule> modules = configContext.getAxisConfiguration().getEngagedModules();
@@ -556,6 +575,7 @@ public class AdminAgent extends Abstract
         renderView(LIST_GLOABLLY_ENGAGED_MODULES_JSP_NAME, req, res);
     }
 
+    @Action(name="listModules")
     public void processListModules(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         Map<String,AxisModule> modules = configContext.getAxisConfiguration().getModules();
@@ -567,6 +587,7 @@ public class AdminAgent extends Abstract
         renderView(LIST_AVAILABLE_MODULES_JSP_NAME, req, res);
     }
 
+    @Action(name="disengageModule")
     public void processdisengageModule(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String type = req.getParameter("type");
@@ -603,6 +624,7 @@ public class AdminAgent extends Abstract
         renderView("disengage.jsp", req, res);
     }
 
+    @Action(name="deleteService")
     public void processdeleteService(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         String serviceName = req.getParameter("serviceName");
@@ -617,6 +639,7 @@ public class AdminAgent extends Abstract
         renderView("deleteService.jsp", req, res);
     }
 
+    @Action(name="selectService")
     public void processSelectService(HttpServletRequest req, HttpServletResponse res)
             throws IOException, ServletException {
         populateSessionInformation(req);
@@ -624,20 +647,4 @@ public class AdminAgent extends Abstract
 
         renderView(SELECT_SERVICE_JSP_NAME, req, res);
     }
-
-
-    private boolean authorizationRequired
-            (HttpServletRequest
-                    httpServletRequest) {
-        return httpServletRequest.getSession().getAttribute(Constants.LOGGED) == null &&
-                !httpServletRequest.getRequestURI().endsWith("login");
-    }
-
-    private boolean axisSecurityEnabled
-            () {
-        Parameter parameter = configContext.getAxisConfiguration()
-                .getParameter(Constants.ADMIN_SECURITY_DISABLED);
-        return parameter == null || !"true".equals(parameter.getValue());
-    }
-
 }

Modified: axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AxisAdminServlet.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AxisAdminServlet.java?rev=1745860&r1=1745859&r2=1745860&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AxisAdminServlet.java (original)
+++ axis/axis2/java/core/trunk/modules/webapp/src/main/java/org/apache/axis2/webapp/AxisAdminServlet.java Sat May 28 10:22:19 2016
@@ -21,6 +21,7 @@ package org.apache.axis2.webapp;
 
 import org.apache.axis2.Constants;
 import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.description.Parameter;
 import org.apache.axis2.transport.http.AxisServlet;
 
 import javax.servlet.ServletConfig;
@@ -29,6 +30,9 @@ import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.lang.reflect.Method;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  *
@@ -36,7 +40,13 @@ import java.io.IOException;
 public class AxisAdminServlet extends AxisServlet {
     private static final long serialVersionUID = -6740625806509755370L;
     
-    protected transient AdminAgent agent;
+    private Map<String,ActionHandler> actionHandlers = new HashMap<String,ActionHandler>();
+
+    private boolean axisSecurityEnabled() {
+        Parameter parameter = configContext.getAxisConfiguration()
+                .getParameter(Constants.ADMIN_SECURITY_DISABLED);
+        return parameter == null || !"true".equals(parameter.getValue());
+    }
 
     @Override
     protected void doPost(HttpServletRequest req, HttpServletResponse res)
@@ -47,11 +57,22 @@ public class AxisAdminServlet extends Ax
     @Override
     protected void doGet(HttpServletRequest req,
                          HttpServletResponse resp) throws ServletException, IOException {
-        try {
+        String action;
+        String pathInfo = req.getPathInfo();
+        if (pathInfo == null || pathInfo.isEmpty() || pathInfo.equals("/")) {
+            action = "index";
+        } else if (pathInfo.charAt(0) == '/') {
+            action = pathInfo.substring(1);
+        } else {
+            resp.sendError(HttpServletResponse.SC_NOT_FOUND);
+            return;
+        }
+        ActionHandler actionHandler = actionHandlers.get(action);
+        if (actionHandler != null) {
             req.getSession().setAttribute(Constants.SERVICE_PATH, configContext.getServicePath());
-            agent.handle(req, resp);
-        } catch (Exception e) {
-            throw new ServletException(e);
+            actionHandler.handle(req, resp, axisSecurityEnabled());
+        } else {
+            resp.sendError(HttpServletResponse.SC_NOT_FOUND);
         }
     }
 
@@ -62,7 +83,15 @@ public class AxisAdminServlet extends Ax
         this.configContext =
                 (ConfigurationContext) servletContext.getAttribute(CONFIGURATION_CONTEXT);
         servletContext.setAttribute(this.getClass().getName(), this);
-        agent = new AdminAgent(configContext);
+        AdminActions actions = new AdminActions(configContext);
+        for (Method method : actions.getClass().getMethods()) {
+            Action actionAnnotation = method.getAnnotation(Action.class);
+            if (actionAnnotation != null) {
+                actionHandlers.put(
+                        actionAnnotation.name(),
+                        new ActionHandler(actions, method, actionAnnotation.authorizationRequired()));
+            }
+        }
         this.servletConfig = config;
     }
 

Modified: axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/LeftFrame.jsp
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/LeftFrame.jsp?rev=1745860&r1=1745859&r2=1745860&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/LeftFrame.jsp (original)
+++ axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/LeftFrame.jsp Sat May 28 10:22:19 2016
@@ -129,7 +129,7 @@
         &nbsp;&nbsp;&nbsp;&nbsp;
        </td>
        <td>
-         <a href="<c:url value="axis2-admin/engagingglobally"/>">For all Services</a>
+         <a href="<c:url value="axis2-admin/engagingGlobally"/>">For all Services</a>
        </td>
     </tr>
      <tr>

Modified: axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/engagingglobally.jsp
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/engagingglobally.jsp?rev=1745860&r1=1745859&r2=1745860&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/engagingglobally.jsp (original)
+++ axis/axis2/java/core/trunk/modules/webapp/src/main/webapp/axis2-web/engagingglobally.jsp Sat May 28 10:22:19 2016
@@ -34,7 +34,7 @@
     and click on the "Engage" button. Any module that needs to place handlers into the pre-dispatch
     phase needs to be engaged globally.</p>
 
-<form method="get" name="selectModuleForm" action="<c:url value="axis2-admin/engagingglobally"/>">
+<form method="get" name="selectModuleForm" action="<c:url value="axis2-admin/engagingGlobally"/>">
     <table summary="main content table" border="0" style="width:100%" cellspacing="1" cellpadding="1">
         <tr>
             <td style="width: 15%">Select a Module :</td>