public class ProjectRegistrationRequestContext extends RequestContext {
 
  public ProjectRegistrationRequestContext(HttpServletRequest request) {
    super(request);
    initialize(request);
  }
  public ProjectRegistrationRequestContext() { }
 
  public void initialize(ServletRequest request) {
    setRequest(request);
    setProjectName(request.getParameter("projectName"));
    setProjectDescription(request.getParameter("projectdescription"));
    setidCustomer(request.getParameter("customerid"));
    setProjectManager(request.getParameter("projectmanager"));
    setStartDate(request.getParameter("startdate"));
    setEndDate(request.getParameter("enddate"));
    setEmailAlias(request.getParameter("emailalias"));
  }
 
  ...
 
  // wyspecjalizowane sprawdzanie poprawnoci
  public ValidatorResults validate() {
    ValidatorResults validatorResultsAggregate = null;
    try {
      validatorResultsAggregate = super.validate();
      ValidatorResult validatorResult =
        validatorResultsAggregate.getValidatorResult("projectName");
      if (validatorResult.isValid("required") == false) {
        // obsuga brakujcej nazwy projektu
      }
 
      ValidatorResult validatorResult =
        validatorResultsAggregate.getValidatorResult("projectdescription");
      if (validatorResult.isValid("required") == false) {
        // obsuga brakujcego opisu projektu
      }
 
      ValidatorResult validatorResult =
        validatorResultsAggregate.getValidatorResult("emailalias");
      if (validatorResult.isValid("email") == false) {
        // obsuga bdnego adresu e-mail
      }
    } catch (ValidatorException e) {
      // obsuga wyjtku
    }
    return ValidatorResults;
  }
 
  public String getValidationFormName() {
    return "ProjectRegistrationForm";
  }
}
