Hi, 

Here is my form bean declaration : 

<form-beans>
    <form-bean name="loginForm" type="com.eyrolles.LoginForm" />
    <form-bean name="employeForm" type="com.eyrolles.EmployeForm" />
  </form-beans>

And here is the action form : 
(NB : the other declaration loginForm does not use the loginrequired
property.)

package com.eyrolles.struts;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMessage;

public class EmployeForm extends ActionForm {

  private static final long serialVersionUID = 1L;      
  protected String username;
  protected String password;
  protected String name;
  protected String phone;
  protected String email;
  protected String depid;
  protected String roleid;

  public void setUsername(String username) {

    this.username = username;
  }

  public String getUsername() {

    return username;
  }

  public void setPassword(String password) {

    this.password = password;
  }

  public String getPassword() {

    return password;
  }

  public void setName(String name) {

    this.name = name;
  }

  public String getName() {

    return name;
  }

  public void setPhone(String phone) {

    this.phone = phone;
  }

  public String getPhone() {

    return phone;
  }

  public void setEmail(String email) {

    this.email = email;
  }

  public String getEmail() {

    return email;
  }

  public void setDepid(String depid) {

    this.depid = depid;
  }

  public String getDepid() {

    return depid;
  }

  public void setRoleid(String roleid) {

    this.roleid = roleid;
  }

  public String getRoleid() {

    return roleid;
  }

  // Cette méthode est appelée par chaque requête. Elle réinitialise les
  // attributs du formulaire avant de copier les données de la nouvelle
requête.
  public void reset(ActionMapping mapping, HttpServletRequest request) {

    this.username = "";
    this.password = "";
    this.name = "";
    this.phone = "";
    this.email = "";
    this.depid = "1";
    this.roleid = "1";
  }

  public ActionErrors validate(ActionMapping mapping,
    HttpServletRequest request) {

    ActionErrors errors = new ActionErrors();

    EmployesActionMapping employesMapping =
      (EmployesActionMapping)mapping;

    // Cette action nécessite-t-elle l'identification de l'utilisateur ?
    if ( employesMapping.isLoginRequired() ) {

      HttpSession session = request.getSession();
      if ( session.getAttribute("USER") == null ) {

        // retourner null force l'action à traiter l'erreur de login
        return null;
      }
    }

    if ( (roleid == null ) || (roleid.length() == 0) ) {

      errors.add("roleid", new ActionMessage("errors.roleid.required"));
    }
    if ( (depid == null ) || (depid.length() == 0) ) {

      errors.add("depid", new ActionMessage("errors.depid.required"));
    }
    if ( (email == null ) || (email.length() == 0) ) {

      errors.add("email", new ActionMessage("errors.email.required"));
    }
    if ( (phone == null ) || (phone.length() == 0) ) {

      errors.add("phone", new ActionMessage("errors.phone.required"));
    }
    if ( (name == null ) || (name.length() == 0) ) {

      errors.add("name", new ActionMessage("errors.name.required"));
    }
    if ( (password == null ) || (password.length() == 0) ) {

      errors.add("password", new ActionMessage("errors.password.required"));
    }
    if ( (username == null ) || (username.length() == 0) ) {

      errors.add("username", new ActionMessage("errors.username.required"));
    }
    return errors;
  }
}

-----Message d'origine-----
De : Samere, Adam J [mailto:[EMAIL PROTECTED] 
Envoyé : mercredi 7 juin 2006 19:04
À : Struts Users Mailing List
Objet : RE: struts-config xml file throws a java exception

Can you post the form bean declaration from struts config and the ActionForm
subclass? 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to