public void regist(RegisterRequest req) { // 동일한 이메일을 갖는 회원 데이터가 존재하는지 확인 Member member = memberDao.selectByEmail(req.getEmail()); if (member != null) { throw new AlreadyExistingMemberException("dup email " + req.getEmail()); } Member newMember = new Member(req.getEmail(), req.getPassword(), req.getName(), new Date()); memberDao.insert(newMember); }
@Override public void validate(Object o, Errors errors) { RegisterRequest form = (RegisterRequest) o; /* Nick validate */ String nick = form.getNick(); if (Strings.isNullOrEmpty(nick)) { errors.rejectValue("nick", null, "не задан nick"); } if (nick != null && !StringUtil.checkLoginName(nick)) { errors.rejectValue("nick", null, "некорректное имя пользователя"); } if (nick != null && nick.length() > User.MAX_NICK_LENGTH) { errors.rejectValue("nick", null, "слишком длинное имя пользователя"); } /* Password validate */ String password = Strings.emptyToNull(form.getPassword()); String password2 = Strings.emptyToNull(form.getPassword2()); if (Strings.isNullOrEmpty(password)) { errors.reject("password", null, "пароль не может быть пустым"); } if (Strings.isNullOrEmpty(password2)) { errors.reject("password2", null, "пароль не может быть пустым"); } if (password != null && password.equalsIgnoreCase(nick)) { errors.reject(password, null, "пароль не может совпадать с логином"); } if (form.getPassword2() != null && form.getPassword() != null && !form.getPassword().equals(form.getPassword2())) { errors.reject(null, "введенные пароли не совпадают"); } if (!Strings.isNullOrEmpty(form.getPassword()) && form.getPassword().length() < MIN_PASSWORD_LEN) { errors.reject( "password", null, "слишком короткий пароль, минимальная длина: " + MIN_PASSWORD_LEN); } /* Email validate */ if (Strings.isNullOrEmpty(form.getEmail())) { errors.rejectValue("email", null, "Не указан e-mail"); } else { try { InternetAddress mail = new InternetAddress(form.getEmail()); checkEmail(mail, errors); } catch (AddressException e) { errors.rejectValue("email", null, "Некорректный e-mail: " + e.getMessage()); } } /* Rules validate */ if (Strings.isNullOrEmpty(form.getRules()) || !"okay".equals(form.getRules())) { errors.reject("rules", null, "Вы не согласились с правилами"); } }
public StatusResponse registerUser( RegisterRequest data, HashMap<String, Connection<?>> connections, HttpServletRequest request, HttpServletResponse response) { try { loadUserByUsername(data.getUsername()); StatusResponse result = new StatusResponse(); result.setLogged(false); result.setProfile(null); result.getResponses().put("registration", "username_exists"); return result; } catch (UsernameNotFoundException e) { try { context.getUserProfileDao().loadUserByUsername(data.getEmail()); StatusResponse result = new StatusResponse(); result.setLogged(false); result.setProfile(null); result.getResponses().put("registration", "email_exists"); return result; } catch (UsernameNotFoundException e2) { String string = new String(); try { System.out.println("ProxyHost=" + this.proxyHost); System.out.println("ProxyPort=" + this.proxyPort); System.out.println("recaptchaSecretKey=" + this.recaptchaSecretKey); // Newer versions of Java need a "http." prefix on the system properties System.setProperty("proxyHost", this.proxyHost); System.setProperty("proxyPort", this.proxyPort); System.setProperty("http.proxyHost", this.proxyHost); System.setProperty("http.proxyPort", this.proxyPort); URL url = new URL( "https://www.google.com/recaptcha/api/siteverify?secret=" + this.recaptchaSecretKey + "&response=" + data.getRecaptcha()); System.out.println(url.toString()); Scanner scanner = new Scanner(url.openStream()); while (scanner.hasNext()) { string += scanner.nextLine(); } scanner.close(); } catch (java.io.IOException e3) { System.out.println("!!!!!" + e3.toString() + "!!!!!"); } if (string.indexOf("true") == -1) { StatusResponse result = new StatusResponse(); result.setLogged(false); result.setProfile(null); result.getResponses().put("registration", "bad_recaptcha"); return result; } UserProfile user = context .getUserProfileDao() .createUser(data.getUsername(), data.getPassword(), data.getEmail(), false); login(user, request, response); return status(connections, request.getSession()); } } }