Bonjour tout le monde, j'ai un petit problème qui est apparu aujourd'hui.
J'ai le côté technique d'un site web à faire et je me suis basé sur le framework Struts. J'ai plusieurs formulaires que je valide via la fonction validate d'un ActionForm puis que j'envoie à l'Action.
La dernière fois que j'ai testé mes formulaires tout marchait bien, les erreurs étaient bien affichées (champ vide etc...) mais aujourd'hui, impossible de les voir.
Je vous mets le code pour un des formulaires:
Formulaire
Code :
- <html:form action="/membres/login" method="post">
- <fmt:message key="login.form.username" />
- <br />
- <html:text property="username" />
- <br />
- <div class="erreur"><html:errors property="username" /></div>
- <br />
- <fmt:message key="login.form.password" />
- <br />
- <html:password property="password" />
- <br />
- <div class="erreur"><html:errors property="password" /></div>
- <br />
- <html:submit value="Ok" />
- </html:form>
|
struts-config
Code :
- <action path="/membres/login"
- attribute="loginForm"
- input="/membres/index.jsp"
- name="loginForm"
- validate="true"
- type="com.logimine.action.LoginAction">
- <forward name="success" path="/membres/veriftypecompte.do" />
- <forward name="default" path="/membres/erreur.jsp" />
- </action>
|
LoginForm
Code :
- public class LoginForm extends ActionForm
- {
- private String username;
- private String password;
- public String getPassword()
- {
- return password;
- }
- public void setPassword(String password)
- {
- this.password = password;
- }
- public String getUsername()
- {
- return username;
- }
- public void setUsername(String username)
- {
- this.username = username;
- }
- @Override
- public ActionErrors validate(ActionMapping mapping, HttpServletRequest req)
- {
- ActionErrors errors = new ActionErrors();
- if(username == null || username.length() == 0)
- {
- errors.add("username",new ActionMessage("login.erreur.username" ));
- }
- if(password == null || password.length() == 0)
- {
- errors.add("password",new ActionMessage("login.erreur.password" ));
- }
- return errors;
- }
- }
|
LoginAction
Code :
- public class LoginAction extends Action
- {
- @Override
- public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest req, HttpServletResponse res) throws Exception
- {
- String findMapping = null;
- LoginForm loginForm = (LoginForm)form;
- // blabla...
- return mapping.findForward(findMapping);
- }
- }
|
Je ne vois pas spécialement d'erreurs, dans LoginForm j'ai mis un affichage d'errors sur la console et j'ai bien les erreurs à l'intérieur. Par contre elles n'apparaissent pas sur ma jsp.
Vous avez une idée?
Message édité par Cheinz le 10-08-2007 à 16:47:11