Struts et html errors

Struts et html errors - Java - Programmation

Marsh Posté le 10-08-2007 à 16:42:27    

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 :
  1. <html:form action="/membres/login" method="post">
  2.   <fmt:message key="login.form.username" />
  3.   <br />
  4.   <html:text property="username" />
  5.   <br />
  6.   <div class="erreur"><html:errors property="username" /></div>
  7.   <br />
  8.   <fmt:message key="login.form.password" />
  9.   <br />
  10.   <html:password property="password" />
  11.   <br />
  12.   <div class="erreur"><html:errors property="password" /></div>
  13.   <br />
  14.   <html:submit value="Ok" />
  15. </html:form>


 
struts-config

Code :
  1. <action path="/membres/login"
  2.  attribute="loginForm"
  3.  input="/membres/index.jsp"
  4.  name="loginForm"
  5.   validate="true"
  6.  type="com.logimine.action.LoginAction">
  7.   <forward name="success" path="/membres/veriftypecompte.do" />
  8.   <forward name="default" path="/membres/erreur.jsp" />
  9. </action>


LoginForm

Code :
  1. public class LoginForm extends ActionForm
  2. {
  3. private String username;
  4. private String password;
  5. public String getPassword()
  6. {
  7.  return password;
  8. }
  9. public void setPassword(String password)
  10. {
  11.  this.password = password;
  12. }
  13. public String getUsername()
  14. {
  15.  return username;
  16. }
  17. public void setUsername(String username)
  18. {
  19.  this.username = username;
  20. }
  21. @Override
  22. public ActionErrors validate(ActionMapping mapping, HttpServletRequest req)
  23. {
  24.  ActionErrors errors = new ActionErrors();
  25.  if(username == null || username.length() == 0)
  26.  {
  27.   errors.add("username",new ActionMessage("login.erreur.username" ));
  28.  }
  29.  if(password == null || password.length() == 0)
  30.  {
  31.   errors.add("password",new ActionMessage("login.erreur.password" ));
  32.  }
  33.  return errors;
  34. }
  35. }


LoginAction

Code :
  1. public class LoginAction extends Action
  2. {
  3. @Override
  4. public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest req, HttpServletResponse res) throws Exception
  5. {
  6.  String findMapping = null;
  7.  LoginForm loginForm = (LoginForm)form;
  8.  // blabla...
  9.  return mapping.findForward(findMapping);
  10. }
  11. }


 
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
Reply

Marsh Posté le 10-08-2007 à 16:42:27   

Reply

Marsh Posté le 10-08-2007 à 17:03:03    

Il doit te manquer l'appel de saveErrors(req, errors); dans ta méthode validate

Reply

Marsh Posté le 13-08-2007 à 09:31:14    

Jamais entendu parlé de cette fonction dans les différents tuto que j'ai regardé... mais j'essaye ça tout de suite, merci.

Reply

Marsh Posté le 13-08-2007 à 09:35:08    

Bon, ça n'a pas l'air d'être ça, la fonction saveErrors n'existe que dans l'Action et non dans l'ActionForm et je ne génère pas d'erreurs dans mon Action...

Reply

Marsh Posté le 24-08-2007 à 16:20:08    

up

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed