Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
javaee:td3 [2013/11/20 00:09] – [main.jsp] jcheron | javaee:td3 [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 199: | Ligne 199: | ||
Modifier les ids des éléments du menu, pour les faire correspondre aux actions (méthodes du contrôleur) : | Modifier les ids des éléments du menu, pour les faire correspondre aux actions (méthodes du contrôleur) : | ||
- | <sxh html; | + | <sxh html; |
<div id=" | <div id=" | ||
<ul id=" | <ul id=" | ||
- | <li id=" | + | <li id=" |
<li id=" | <li id=" | ||
- | <li id=" | + | <li id=" |
<li class=" | <li class=" | ||
<li class=" | <li class=" | ||
Ligne 377: | Ligne 377: | ||
=== Contrôleur index === | === Contrôleur index === | ||
- | Le contrôleur index correspond à la page d' | + | Le contrôleur index correspond à la page d' |
- | Il utilise le contrôleur ajaxMain, dont le rôle est d' | + | Il utilise le contrôleur |
<sxh java; | <sxh java; | ||
Ligne 404: | Ligne 404: | ||
<sxh java; | <sxh java; | ||
- | /** | ||
- | * Page index de l' | ||
- | * @param request | ||
- | * @param response | ||
- | * @throws IOException | ||
- | */ | ||
- | public void index(HttpServletRequest request, | ||
- | PrintWriter out=getOut(response); | ||
loadView(" | loadView(" | ||
- | out.print("< | + | ajaxMain(request, response); |
- | printMe(request, response); | + | loadView(" |
- | | + | } |
- | loadView(" | + | </ |
- | | + | |
- | " | + | |
- | " | + | |
+ | |||
+ | ==== Modification d' | ||
+ | La modification se fait en trois étapes : | ||
+ | - Choix de l' | ||
+ | - Affichage de l' | ||
+ | - Post du formulaire et modification de l' | ||
+ | |||
+ | === Vues === | ||
+ | <sxh html; | ||
+ | <%@page import=" | ||
+ | <%@page import=" | ||
+ | <%@page import=" | ||
+ | <%@ page language=" | ||
+ | pageEncoding=" | ||
+ | <form name=" | ||
+ | <% | ||
+ | SessionApp sessionApp=Utils.getSessionApp(session); | ||
+ | out.print(ConvertToHtml.mapToSelect(sessionApp.getApplication().getLesUtilisateurs(), | ||
+ | %> | ||
+ | </ | ||
+ | <input type=" | ||
+ | <div id=" | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | <sxh html; | ||
+ | <%@page import=" | ||
+ | <%@page import=" | ||
+ | <%@page import=" | ||
+ | <%@ page language=" | ||
+ | pageEncoding=" | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | <form name=" | ||
+ | <input type=" | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | |||
+ | </ | ||
+ | <input type=" | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | === Contrôleur updateUser === | ||
+ | |||
+ | <sxh java; | ||
+ | public void updateUser(HttpServletRequest request, HttpServletResponse response) throws IOException{ | ||
+ | PrintWriter out=getOut(response); | ||
+ | if(isPost(request)){ | ||
+ | if(GET(request," | ||
+ | | ||
+ | request.setAttribute(" | ||
+ | loadView(" | ||
+ | out.print(JSFormsUtils.postFormAndBindTo("# | ||
+ | }else{ | ||
+ | if(GET(request," | ||
+ | Utilisateur user= GatewaySession.getOneUser(request, | ||
+ | user.setName(GET(request," | ||
+ | user.setFirstName(GET(request, | ||
+ | user.setLastName(GET(request, | ||
+ | out.print(" | ||
+ | out.print(JSFormsUtils.setHtml(" | ||
+ | out.print(JSFormsUtils.get(" | ||
+ | } | ||
+ | } | ||
+ | }else{ | ||
+ | loadView(" | ||
+ | out.print(JSFormsUtils.postFormAndBindTo("# | ||
} | } | ||
- | out.print("</ | ||
- | |||
- | loadView(" | ||
} | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Utilitaires ==== | ||
+ | |||
+ | === Dans MainController === | ||
+ | Pour simplifier le test sur l' | ||
+ | |||
+ | <sxh java; | ||
+ | /** | ||
+ | * Retourne vrai si l' | ||
+ | */ | ||
+ | protected boolean isLogIn(HttpServletRequest request){ | ||
+ | SessionApp sessionApp=Utils.getSessionApp(request); | ||
+ | return sessionApp.isUserLogIn(); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | === WRequest === | ||
+ | Pour faciliter la récupération d' | ||
+ | |||
+ | <sxh java; | ||
+ | package web.technics; | ||
+ | |||
+ | import javax.servlet.http.HttpServletRequest; | ||
+ | |||
+ | public class WRequest { | ||
+ | /** | ||
+ | * Retourne le paramètre de nom parameterName de la requête | ||
+ | * @param request requête HTTP | ||
+ | * @param parameterName nom du paramètre | ||
+ | * @return | ||
+ | */ | ||
+ | public static String GET(HttpServletRequest request, | ||
+ | return request.getParameter(parameterName); | ||
+ | } | ||
+ | /** | ||
+ | * Retourne le paramètre de nom parameterName de la requête et retourne defaultValue si le paramètre n'est pas trouvé | ||
+ | * @param request requête HTTP | ||
+ | * @param parameterName nom du paramètre | ||
+ | * @param defaultValue valeur par défault | ||
+ | * @return paramètre de la requête | ||
+ | */ | ||
+ | @SuppressWarnings(" | ||
+ | public static <T> T GET(HttpServletRequest request, | ||
+ | T result; | ||
+ | String p=request.getParameter(parameterName); | ||
+ | if(p==null) | ||
+ | result= defaultValue; | ||
+ | else{ | ||
+ | try{ | ||
+ | result=(T)request.getParameter(parameterName); | ||
+ | }catch(Exception e){ | ||
+ | result= defaultValue; | ||
+ | } | ||
+ | } | ||
+ | return result; | ||
+ | } | ||
+ | /** | ||
+ | * Retourne l' | ||
+ | * @param request requête HTTP | ||
+ | * @param attributeName nom de l' | ||
+ | * @return | ||
+ | */ | ||
+ | public static Object GETAttr(HttpServletRequest request, | ||
+ | return request.getAttribute(attributeName); | ||
+ | } | ||
+ | /** | ||
+ | * Retourne l' | ||
+ | * @param request requête HTTP | ||
+ | * @param attributeName nom de l' | ||
+ | * @param defaultValue valeur par défault | ||
+ | * @return | ||
+ | */ | ||
+ | @SuppressWarnings(" | ||
+ | public static <T> T GETAttr(HttpServletRequest request, | ||
+ | T result=(T)request.getAttribute(attributeName); | ||
+ | if(result==null) | ||
+ | result= defaultValue; | ||
+ | return result; | ||
+ | } | ||
+ | } | ||
+ | |||
</ | </ |