protected ModelAndView onSubmit(
      HttpServletRequest request,
      HttpServletResponse response,
      Object command,
      BindException errors) {

    InitiatePDPSU1InquiryBean createPDPSBean = (InitiatePDPSU1InquiryBean) command;

    HttpSession session = request.getSession();

    String applicantId = (String) session.getAttribute(DLRConstants.SESSION_APPLICANT_ID);
    Long personId = Long.valueOf(applicantId);

    String msgId = null;

    try {
      msgId =
          PDPSService.performCreatePDPSDriverRequest(createPDPSBean.toParametersMap(), personId);
      if (!StringUtil.trimString(msgId).equals("")) {
        applicantBus.updatePDPSPersonStatus(
            personId, MessageCodeConstants.PDPS_PERSON_STATUS_ADD_DRIVER_INITIATED);
      }

    } catch (ValidationException e) {
      ArrayList<Object> errorsList = e.getErrors();
      return new ModelAndView(getErrorView(), "errorsList", errorsList);
    } catch (MessageException e) {
      ArrayList<Object> errorsList = new ArrayList<Object>();
      errorsList.add(e.getMessage());
      return new ModelAndView(getErrorView(), "errorsList", errorsList);
    }

    HashMap<Object, Object> map = new HashMap<Object, Object>();
    map.put("messageid", msgId);
    map.put("uscName", "Create New Driver on PDPS");

    return new ModelAndView("aamva/common/messageSent", map);
  }