details: https://code.openbravo.com/erp/devel/pi/rev/78990dcd4bf3 changeset: 30638:78990dcd4bf3 user: Martin Taal <martin.taal <at> openbravo.com> date: Mon Nov 14 12:25:55 2016 +0100 summary: Fixes issue 34481: Webservice and standard login support different request parameters for login Add support for user/password parameter in webservice and l and p parameters in standard authenticationmanager
diffstat: src/org/openbravo/authentication/AuthenticationManager.java | 12 ++++++- src/org/openbravo/authentication/basic/DefaultAuthenticationManager.java | 16 ++++++--- 2 files changed, 21 insertions(+), 7 deletions(-) diffs (75 lines): diff -r b59cceedafd3 -r 78990dcd4bf3 src/org/openbravo/authentication/AuthenticationManager.java --- a/src/org/openbravo/authentication/AuthenticationManager.java Mon Nov 14 12:22:05 2016 +0100 +++ b/src/org/openbravo/authentication/AuthenticationManager.java Mon Nov 14 12:25:55 2016 +0100 @@ -63,6 +63,8 @@ private static final String REJECTED_SESSION_WEB_SERVICE = "WSR"; private static final String SUCCESS_SESSION_CONNECTOR = "WSC"; private static final String FAILED_SESSION = "F"; + protected static final String LOGIN_PARAM = "user"; + protected static final String PASSWORD_PARAM = "password"; protected ConnectionProvider conn = null; protected String defaultServletUrl = null; @@ -393,8 +395,14 @@ * </ul> */ protected String doWebServiceAuthenticate(HttpServletRequest request) { - final String login = request.getParameter(BaseWebServiceServlet.LOGIN_PARAM); - final String password = request.getParameter(BaseWebServiceServlet.PASSWORD_PARAM); + String login = request.getParameter(BaseWebServiceServlet.LOGIN_PARAM); + if (StringUtils.isEmpty(login)) { + login = request.getParameter(LOGIN_PARAM); + } + String password = request.getParameter(BaseWebServiceServlet.PASSWORD_PARAM); + if (StringUtils.isEmpty(password)) { + password = request.getParameter(PASSWORD_PARAM); + } String userId = null; if (login != null && password != null) { username = login; diff -r b59cceedafd3 -r 78990dcd4bf3 src/org/openbravo/authentication/basic/DefaultAuthenticationManager.java --- a/src/org/openbravo/authentication/basic/DefaultAuthenticationManager.java Mon Nov 14 12:22:05 2016 +0100 +++ b/src/org/openbravo/authentication/basic/DefaultAuthenticationManager.java Mon Nov 14 12:25:55 2016 +0100 @@ -36,6 +36,7 @@ import org.openbravo.erpCommon.utility.OBError; import org.openbravo.erpCommon.utility.Utility; import org.openbravo.model.ad.access.User; +import org.openbravo.service.web.BaseWebServiceServlet; /** * @@ -66,7 +67,6 @@ final String sUserId; if (resetPassword) { sUserId = vars.getSessionValue("#AD_User_ID"); - } else { sUserId = (String) request.getSession().getAttribute("#Authenticated_user"); } @@ -77,16 +77,22 @@ } VariablesHistory variables = new VariablesHistory(request); - final String user; - final String pass; + String user; + String pass; // Begins code related to login process if (resetPassword) { User userOB = OBDal.getInstance().get(User.class, sUserId); user = userOB.getUsername(); } else { - user = vars.getStringParameter("user"); + user = vars.getStringParameter(LOGIN_PARAM); + if (StringUtils.isEmpty(user)) { + user = vars.getStringParameter(BaseWebServiceServlet.LOGIN_PARAM); + } } - pass = vars.getStringParameter("password"); + pass = vars.getStringParameter(PASSWORD_PARAM); + if (StringUtils.isEmpty(pass)) { + pass = vars.getStringParameter(BaseWebServiceServlet.PASSWORD_PARAM); + } username = user; if (StringUtils.isEmpty(user)) { // redirects to the menu or the menu with the target ------------------------------------------------------------------------------ Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon Phi processor-based developer platforms. With one year of Intel Parallel Studio XE. Training and support from Colfax. Order your platform today. http://sdm.link/xeonphi _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits