Struts2 Validation using Annotation

Struts Validation using annotaions example.

Example1

UserAction.java

  1. package action;  
  2.   
  3. import com.opensymphony.xwork2.ActionSupport;  
  4. import com.opensymphony.xwork2.validator.annotations.DateRangeFieldValidator;  
  5. import com.opensymphony.xwork2.validator.annotations.EmailValidator;  
  6. import com.opensymphony.xwork2.validator.annotations.IntRangeFieldValidator;  
  7. import com.opensymphony.xwork2.validator.annotations.RequiredStringValidator;  
  8. import com.opensymphony.xwork2.validator.annotations.StringLengthFieldValidator;  
  9. import com.opensymphony.xwork2.validator.annotations.Validations;  
  10. import java.util.Date;  
  11. import java.util.Map;  
  12. import org.apache.struts2.interceptor.RequestAware;  
  13. import org.apache.struts2.interceptor.SessionAware;  
  14.   
  15. @Validations  
  16. public class UserAction extends ActionSupport   
  17.         implements RequestAware, SessionAware {  
  18.   
  19.     private String userName;  
  20.     private String password;  
  21.     private String confPassword;  
  22.     private String email;  
  23.     private Integer age;  
  24.     private Date bday;  
  25.   
  26.     private Map<String, Object> requestMap;  
  27.     private Map<String, Object> sessionMap;  
  28.   
  29.     public void validate() {  
  30.   
  31.         if (!password.equals(confPassword)) {  
  32.             addActionError("Password mismatch");  
  33.         }  
  34.     }  
  35.   
  36.     public String login() {  
  37.   
  38.        return SUCCESS;  
  39.     }  
  40.   
  41.     @DateRangeFieldValidator(max="12/31/2010", min="12/21/2010",  
  42.             message="Invalid Date Range")  
  43.     public Date getBday() {  
  44.         return bday;  
  45.     }  
  46.   
  47.     public void setBday(Date bday) {  
  48.         this.bday = bday;  
  49.     }  
  50.   
  51.     @StringLengthFieldValidator(maxLength="20", minLength="10",  
  52.             message="Invalid password length", trim=false)  
  53.     @RequiredStringValidator(message="Enter Password")  
  54.     public String getPassword() {  
  55.         return password;  
  56.     }  
  57.   
  58.     public void setPassword(String password) {  
  59.         this.password = password;  
  60.     }  
  61.   
  62.     @StringLengthFieldValidator(maxLength="20", minLength="10",  
  63.             message="Invalid username length", trim=true)  
  64.     @RequiredStringValidator(message="Enter Username")  
  65.     public String getUserName() {  
  66.         return userName;  
  67.     }  
  68.   
  69.     public void setUserName(String userName) {  
  70.         this.userName = userName;  
  71.     }  
  72.   
  73.     @RequiredStringValidator(message="Enter Confirm Password")  
  74.     public String getConfPassword() {  
  75.         return confPassword;  
  76.     }  
  77.   
  78.     public void setConfPassword(String confPassword) {  
  79.         this.confPassword = confPassword;  
  80.     }  
  81.   
  82.     @RequiredStringValidator(message="Enter email")  
  83.     @EmailValidator(message="Invalid email")  
  84.     public String getEmail() {  
  85.         return email;  
  86.     }  
  87.   
  88.     public void setEmail(String email) {  
  89.         this.email = email;  
  90.     }  
  91.   
  92.     @IntRangeFieldValidator(min="18", max="25",message="Invalid age")      
  93.     public Integer getAge() {  
  94.         return age;  
  95.     }  
  96.   
  97.     public void setAge(Integer age) {  
  98.         this.age = age;  
  99.     }  
  100.   
  101.     public void setRequest(Map<String, Object> map) {  
  102.         System.out.println("set request");  
  103.         requestMap = map;  
  104.     }  
  105.   
  106.     public void setSession(Map<String, Object> map) {  
  107.         System.out.println("set session" );  
  108.         sessionMap = map;  
  109.     }  
  110.   
  111. }  



Example 2
UserAction.java
  1. package action;  
  2.   
  3.     import com.opensymphony.xwork2.validator.annotations.RequiredStringValidator;  
  4.     import com.opensymphony.xwork2.validator.annotations.Validation;  
  5.     import javax.servlet.http.HttpServletRequest;  
  6.     import org.apache.struts2.ServletActionContext;  
  7.     import com.opensymphony.xwork2.ActionSupport;  
  8.   
  9.     @Validation  
  10.     public class UserAction extends ActionSupport {  
  11.   
  12.         private String userName;  
  13.         private String password;  
  14.   
  15.         public String signIn() {  
  16.               
  17.             if(check user name and password with DB. if return true){      
  18.                 return SUCCESS;  
  19.             }  
  20.             else{  
  21.                 addActionError("Invalid Usernme or Password");  
  22.                 return INPUT;  
  23.             }  
  24.         }  
  25.          
  26.         @RequiredStringValidator(message="Username Is Required")  
  27.         public String getUserName() {  
  28.             return userName;  
  29.         }  
  30.   
  31.         public void setUserName(String userName) {  
  32.             this.userName = userName;  
  33.         }  
  34.   
  35.         @RequiredStringValidator(message="Password Is Required")  
  36.         public String getPassword() {  
  37.             return password;  
  38.         }  
  39.   
  40.         public void setPassword(String password) {  
  41.             this.password = password;  
  42.         }  
  43.     }  

No comments:

Post a Comment