public String perform(HttpServletRequest request) {
		// Set up error list
		List<String> errors = new ArrayList<String>();
		request.setAttribute("errors", errors);

		try {

			// Load the form parameters into a form bean
			SearchCustomerName form = formBeanFactory.create(request);
			request.setAttribute("form", form);
			Transaction.begin();
			int customer_id = customerDAO.getCustomerId(form.getUsername());
			CustomerBean cb = customerDAO.getCustomerInfo(customer_id);
			// If no params were passed, return with no errors so that the form
			// will be

			// presented (we assume for the first time).
			if (!form.isPresent()) {
				Transaction.commit();
				return "e_reset-pwd.jsp";
			}

			// Check for any validation errors
			errors.addAll(form.getValidationErrors());
			if (errors.size() != 0) {
				Transaction.commit();
				return "e_reset-pwd.jsp";
			}
			CustomerBean customer = (CustomerBean) request
					.getAttribute("userName");
			/*
			 * CustomerBean[] userName = customerDAO.getAllCustomers(); if
			 * (userName == null || userName.length() == 0) {
			 * errors.add("User must be specified"); return "error.jsp";
			 * //return -1 means this user not existed
			 * 
			 * if(customer_id==-1){ errors.add("Invalid User Name"); return
			 * "e_reset-pwd.jsp"; }
			 * 
			 * CustomerBean customer = customerDAO.read(userName); if (customer
			 * == null) { errors.add("Invalid User: "+userName); return
			 * "error.jsp"; }
			 */

			// // Change the password
			// customerDAO.changePassword(customer.getCustomer_id(),form.getNewPassword());

			request.setAttribute("customer", cb);
			HttpSession session = request.getSession();
			session.setAttribute("customer", cb);
			Transaction.commit();
			return "e_reset-pfc.do";
		} catch (RollbackException e) {
			errors.add(e.toString());
			return "e_reset-pwd.jsp";
		} catch (FormBeanException e) {
			errors.add(e.toString());
			return "e_reset-pwd.jsp";
		} catch (Exception e) {
			errors.add(e.getMessage());
			return "e_reset-pwd.jsp";
		} finally {
			if (Transaction.isActive())
				Transaction.rollback();
		}
	}