Ignore:
Timestamp:
09/30/06 22:56:33 (6 years ago)
Author:
sys
Message:

Découplage des servlets avec le service de logs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Jav_CO/com/scenari/c/co/servlets/EServletAuthentification.java

    r1710 r6717  
    4646import com.scenari.i.co.pages.HPageErreur; 
    4747import com.scenari.i.co.pages.HPageRedirect; 
    48 import com.scenari.m.co.user.IWUser; 
    49 import com.scenari.m.co.service.IWService; 
    50 import com.scenari.m.co.service.eventlog.WServiceEventLog; 
    5148import com.scenari.m.co.session.HSession; 
    5249import com.scenari.m.co.univers.IWUnivers; 
    53 import com.scenari.s.eventlog.EventLog; 
     50import com.scenari.m.co.user.IWUser; 
    5451import com.scenari.s.fw.log.HLogMgr; 
    5552 
    5653/** 
    57  * Servlet d'authentification. 
    58  * Format de l'URL : 
    59  * /sevletMapping/CdUnivers 
    60  * Exemple : 
    61  * /s-auth/axa 
    62  * 
    63  * 
    64  * Paramètres complémentaires : 
    65  * - account : Compte du user. 
    66  * - password : Mot de passe du user 
    67  * - uridest : Uri de destination après l'authentification 
    68  * 
     54 * Servlet d'authentification. Format de l'URL : /sevletMapping/CdUnivers 
     55 * Exemple : /s-auth/axa 
     56 *  
     57 *  
     58 * Paramètres complémentaires : - account : Compte du user. - password : Mot de 
     59 * passe du user - uridest : Uri de destination après l'authentification 
     60 *  
    6961 */ 
    7062 
     
    7264 
    7365        public static final String FIELD_ACCOUNT = "account"; 
     66 
    7467        public static final String FIELD_PASSWORD = "password"; 
     68 
    7569        public static final String FIELD_URI = "uridest"; 
     70 
    7671        public static final String FIELD_MESSAGE = "message"; 
    7772 
     
    8277                super(); 
    8378        } 
     79 
    8480        public void xService(HttpServletRequest pRequest, HttpServletResponse pResponse) throws Exception { 
    8581 
     
    8783 
    8884                try { 
    89                          
    90                         if(fEncodingRequest != null) { 
    91                                 pRequest.setCharacterEncoding(fEncodingRequest);         
     85 
     86                        if (fEncodingRequest != null) { 
     87                                pRequest.setCharacterEncoding(fEncodingRequest); 
    9288                        } 
    93                          
    94                         //Récupération de l'univers 
     89 
     90                        // Récupération de l'univers 
    9591                        HSession vSession = xGetSession(xGetUnivers(pRequest), pRequest, pResponse); 
    9692                        if (vSession != null) { 
    97                                 //On récupère l'univers de la session 
     93                                // On récupère l'univers de la session 
    9894                                vUnivers = vSession.hGetUnivers(); 
    99                                 //Lecture des paramétres saisis 
     95                                // Lecture des paramétres saisis 
    10096                                String vAccount = pRequest.getParameter(FIELD_ACCOUNT); 
    10197                                String vPassword = pRequest.getParameter(FIELD_PASSWORD); 
    102                                 //Page de sortie 
     98                                // Page de sortie 
    10399                                String vPageDest = pRequest.getParameter(FIELD_URI); 
    104                                 //Message particulier isssu de l'IHM 
     100                                // Message particulier isssu de l'IHM 
    105101                                String vMessage = pRequest.getParameter(FIELD_MESSAGE); 
    106                                  
     102 
    107103                                if (vAccount != null && vPassword != null) { 
    108104 
    109                                         //Recherche de cet acteur 
     105                                        // Recherche de cet acteur 
    110106                                        try { 
    111107                                                IWUser vActeur = vUnivers.hGetUser(vAccount); 
    112108                                                if (vActeur != null && vActeur.hValidPassword(vPassword)) { 
    113                                                         //Ok , acteur identifié 
    114                                                         IWService vEventLogService = vUnivers.hGetService("eventlog"); 
    115                                                         if(vEventLogService != null && vEventLogService instanceof WServiceEventLog){ 
    116                                                                 EventLog vEL = new EventLog(); 
    117                                                                 vEL.addField(WServiceEventLog.CDFIELD_USER, vActeur.hGetAccount()); 
    118                                                                 vEL.addField(WServiceEventLog.CDFIELD_EVENT, "connect"); 
    119                                                                 vEL.addField(WServiceEventLog.CDFIELD_OBJECT, "system"); 
    120                                                                 ((WServiceEventLog)vEventLogService).hLog(vEL); 
    121                                                         } 
     109                                                        // Ok , acteur identifié 
    122110                                                        vSession.hSetActeur(vActeur.hGetAccount()); 
    123                                                         if (vPageDest == null) { 
    124                                                                 throw HLogMgr.hNewException("Aucune page de destination définie : champ '" + FIELD_URI + "' dans les paramètres de l'appel."); 
    125                                                         } 
    126                                                         //On retroune sur la page de destination 
    127                                                         //if (vPageDest.indexOf(':') > 0) { 
    128                                                         if (fControleContexte == CONTROLE_CTXOK ) { 
    129                                                                 if(vPageDest.indexOf("ctx=ok")<0) { 
    130                                                                         vPageDest = vPageDest.concat((vPageDest.indexOf('?')<0) ? "?ctx=ok" : "&ctx=ok"); 
     111                                                        if (vPageDest == null) { throw HLogMgr.hNewException("Aucune page de destination définie : champ '" + FIELD_URI + "' dans les paramètres de l'appel."); } 
     112                                                        // On retroune sur la page de destination 
     113                                                        // if (vPageDest.indexOf(':') > 0) { 
     114                                                        if (fControleContexte == CONTROLE_CTXOK) { 
     115                                                                if (vPageDest.indexOf("ctx=ok") < 0) { 
     116                                                                        vPageDest = vPageDest.concat((vPageDest.indexOf('?') < 0) ? "?ctx=ok" : "&ctx=ok"); 
    131117                                                                } 
    132118                                                        } 
    133119                                                        HPageRedirect.hForward(pRequest, pResponse, vPageDest); 
    134                                                         //} else { 
    135                                                         //      pRequest.getRequestDispatcher(vPageDest).forward(pRequest, pResponse); 
    136                                                         //} 
     120                                                        // } else { 
     121                                                        // pRequest.getRequestDispatcher(vPageDest).forward(pRequest, 
     122                                                        // pResponse); 
     123                                                        // } 
    137124                                                } else { 
    138                                                         //Erreur de connection 
     125                                                        // Erreur de connection 
    139126                                                        HPageAuthentificationErreur.hForward(vUnivers, vAccount, vPassword, vPageDest, pRequest, pResponse); 
    140127                                                } 
    141128                                        } catch (Exception e) { 
    142129                                                HLogMgr.hPublishException(e); 
    143                                                 //Erreur, retour à la page d'authentification 
     130                                                // Erreur, retour à la page d'authentification 
    144131                                                HPageAuthentification.hForward(vUnivers, vPageDest, vMessage, pRequest, pResponse); 
    145132                                        } 
    146133 
    147134                                } else { 
    148                                         //1ere tentative 
     135                                        // 1ere tentative 
    149136                                        HPageAuthentification.hForward(vUnivers, vPageDest, vMessage, pRequest, pResponse); 
    150137                                } 
Note: See TracChangeset for help on using the changeset viewer.