Spring Tool Suite<version>2.1.2.RELEASE
Java <version>8
PostgreSQL<version>9.6
でパスワード再設定画面でメールアドレスの右側に権限のプルダウンを追加する。プルダウン内容は「LmsUserRoleEnum.java」から取得する。
という課題を行っているのですが、パスワード再設定画面にて、権限のプルダウン内容を「LmsUserRoleEnum.java」から取得することができず、困っています。
ヒント画面で、「画面で選択した権限をFORMに受け取り、そちらをPasswordServiceに渡していただくようになります。」
とありますが、「LmsUserRoleEnum.java」のなにを「PasswordService.java]に渡したらよいのでしょうか?
java
1コード LmsUserRoleEnum.java 2package jp.co.sss.lms.enums; 3 4import jp.co.sss.lms.util.Constants; 5 6/** 7 * 権限名称変換 8 * 9 * @author 東京ITスクール 10 */ 11public enum LmsUserRoleEnum { 12 STUDENT(Constants.CODE_VAL_ROLL_STUDENT, "受講生"), TEACHER(Constants.CODE_VAL_ROLL_TEACHER, "講師"), 13 COMPANY_SUBSIDY(Constants.CODE_VAL_ROLL_COMPANY, "企業担当者"), ADMIN((Constants.CODE_VAL_ROLL_ADMIN), "管理者"), 14 COMPANY_TRAINING(Constants.CODE_VAL_ROLL_TRAINING, "育成担当者"),; 15 16 public String code; 17 public String value; 18 19 private LmsUserRoleEnum(String code, String value) { 20 this.code = code; 21 this.value = value; 22 } 23 24 public static LmsUserRoleEnum getEnum(String code) { 25 for (LmsUserRoleEnum e : LmsUserRoleEnum.values()) { 26 if (e.code.equals(code)) { 27 return e; 28 } 29 } 30 return null; 31 } 32 33}
java
1コード 2PasswordController.java 3/** 4 * ログイン画面からパスワード再設定画面 5 * 6 * @return resetPasswordへの遷移 7 */ 8 @RequestMapping(value = "/resetPassword", method = RequestMethod.GET) 9 public String index(@ModelAttribute MailAddressForm form, Model model) { 10 11 // 設定ファイルのメール送信フラグが0の場合、メッセージ表示処理を追加 12 boolean sendFlg = messageUtil.getMessage("setting.mail.send.flg").equals("0") ? true : false; 13 model.addAttribute("sendFlg", sendFlg); 14 15 return "/password/resetPassword"; 16 } 17 18 /** 19 * resetPasswordからcompleteへの遷移<br> 20 * ※送信ボタン押下時<br> 21 * 22 * @return completeへの遷移 23 */ 24 @RequestMapping(value = "/resetPassword/complete", method = RequestMethod.POST) 25 public String complete(@ModelAttribute MailAddressForm mailAddressForm, BindingResult result, HttpServletRequest request, Model model) { 26 27 // 入力値のバリデーションチェック 28 if (result.hasErrors()) { 29 return "/password/resetPassword"; 30 } 31 32 passwordService.registTemporaryPassStorage(mailAddressForm.getMailAddress()); 33 34 String sendFlg = messageUtil.getMessage("setting.mail.send.flg"); 35 if (!sendFlg.equals("0")) { 36 passwordService.sendPasswordResetMail(request, mailAddressForm.getMailAddress()); 37 } 38 39 model.addAttribute("mailAddress", mailAddressForm.getMailAddress()); 40 model.addAttribute("timeLimit", messageUtil.getMessage("setting.timelimit.hour")); 41 42 return "/password/complete"; 43 }
java
1コード 2PasswordService.java 3/** 4 * パスワード変更テーブル登録処理 5 * 6 * @param mailAddress 7 */ 8 public void registTemporaryPassStorage(String mailAddress) { 9 10 MUser mUser = mUserMapper.findByMailAddress(mailAddress, Constants.DB_FLG_FALSE); 11 12 if (mUser == null) { 13 StringBuffer sb = new StringBuffer("パスワードリセット画面で入力されたメールアドレスは存在しません。[" + mailAddress + "]"); 14 loggingUtil.appendLog(sb); 15 logger.info(sb.toString()); 16 return; 17 }
回答1件
あなたの回答
tips
プレビュー