Action
1 2 3 4public class MailAction extends LookupDispatchAction { 5 6 protected Map<String,String> getKeyMethodMap() { 7 // キーとメソッドの対応を登録する 8 Map<String,String> map = new HashMap<String,String>(); 9 map.put("firster","lookupDispatchA"); 10 map.put("forgets","lookupDispatchB"); 11 return map; 12 } 13 14 15 16 private String dbName="staff"; 17 private String user = "root"; 18 private String pass = ""; 19 20 21 22 23 24 public ActionForward lookupDispatchA (ActionMapping mapping 25 ,ActionForm form 26 ,HttpServletRequest request 27 ,HttpServletResponse response) throws Exception { 28 request.setCharacterEncoding("UTF-8"); 29 30 Mailform frm = (Mailform)form; 31 String name = frm.getName(); 32 String address = frm.getAddress(); 33 String pwd = frm.getPwd(); 34 35 System.out.println(pwd); 36 37 38 39 //actionMessaages作成 40 ActionMessages errbox = new ActionMessages(); 41 ActionMessage errmsg1 = new ActionMessage("errors.empty","未入力"); 42 ActionMessage errmsg2 = new ActionMessage("errors.email","半角入力"); 43 ActionMessage errmsg3= new ActionMessage("errors.already","既出"); 44 45 46 if( name == null || address == null) {/*未入力*/ 47 errbox.add("empty",errmsg1); 48 saveErrors(request,errbox); 49 return mapping.findForward("back"); 50 }/*ActionMessage(string、String>はダメ*/ 51 52 53 /*半角入力*/ 54 if (address != "[\\d[a-zA-Z]*]+@[\\d[a-zA-Z]*]"){ 55 56 errbox.add("half",errmsg2); 57 saveErrors(request,errbox); 58 return mapping.findForward("back"); 59 } 60 61 /*configのsource取得*/ 62 63 DBchinuki db = new DBchinuki(); 64 db.getDBConnection(dbName,user,pass); 65 int connect = db.getDBConnection(dbName,user,pass); 66 if(connect == 1) { 67 return mapping.findForward("issue"); 68 } else { 69 return mapping.findForward("miss"); 70 } 71 72 73 String diagno = db.seldb(address);/*登録者かどうか検索*/ 74 System.out.println("/**********************************/"+diagno); 75 76 /*完了済み*/ 77 if(address == diagno) { 78 errbox.add("already",errmsg3); 79 80 saveErrors(request,errbox); 81 return mapping.findForward("issue"); 82 83 } 84 85 db.insdb(name, address,pwd);/*登録*/ 86 db.throwDBConnection(); /*切断*/ 87 SendMail sm = new SendMail(address, pwd); 88 int TS = sm.doMail(); 89 if(TS == 1) { 90 return mapping.findForward("issue"); 91 } else { 92 return mapping.findForward("miss"); 93 } 94 95 96 97 98 99 } 100 101public ActionForward lookupDispatchB(ActionMapping mapping, /*忘れた方*/ 102ActionForm form, 103HttpServletRequest request, 104HttpServletResponse response) throws Exception { 105 Mailform frm = (Mailform)form; 106 String address = frm.getAddress(); 107 String address1 = frm.getAddress1(); 108 String pwd = frm.getPwd(); 109 110 DBchinuki db = new DBchinuki(); 111 String diagno = db.seldb(address);/*登録者か確認*/ 112 113 114 115 //actionMessaages作成 116 ActionMessages errbox = new ActionMessages(); 117 ActionMessage errmsg1 = new ActionMessage("errors.empty","未入力"); 118 ActionMessage errmsg2 = new ActionMessage("errors.email","半角入力"); 119 ActionMessage errmsg4 = new ActionMessage("errors.unregist","未登録"); 120 121 if(address1 == null ) {/*未入力*/ 122 errbox.add("empty",errmsg1); 123 saveErrors(request,errbox); 124 return mapping.findForward("back"); 125 }/*ActionMessage(string、String>はダメ*/ 126 127 /*半角入力*/ 128 if (address1 != "[\\d[a-zA-Z]*]+@[\\d[a-zA-Z]*]"){ 129 errbox.add("half",errmsg2); 130 saveErrors(request,errbox); 131 return mapping.findForward("back"); 132 133 } 134 135 136 db.getDBConnection(dbName,user,pass); 137int connect = db.getDBConnection(dbName,user,pass); 138if(connect == 1) { 139 return mapping.findForward("issue"); 140} else { 141 return mapping.findForward("miss"); 142} 143 144 145 146 147 148 149 /*jquery変数pwd受け渡し*/ 150 151 152 db.updb(pwd,address1);/*更新 addressは条件*/ 153 154 155 156 /*未登録*/ 157 if(address1 != diagno) 158 { 159 errbox.add("unregist",errmsg4); 160 161 saveErrors(request,errbox); 162 return mapping.findForward("back"); 163 164 } 165 166 db.throwDBConnection(); /*切断*/ 167 /*configのsource取得*/ 168 SendMail sm = new SendMail(address1, pwd); 169 int TS = sm.doMail(); 170 if(TS == 1) { 171 return mapping.findForward("issue"); 172 } else { 173 return mapping.findForward("miss"); 174 } 175 176} 177} 178 179 180 181```要点 182困っている点 183コンソールにはランダムパスワードが表示されているがメールが届かないしDBに登録されない 184 185エラー 到達不能コード 186String diagno = db.seldb(address);/A 187 db.updb(pwd,address1);/*更新 addressは条件*/Bででてます 188※除去してはいけない処理です 189 190 191 192どこかまちがっているのかわかりません。 193javamailのバージョンが表示されなくなりました。 194
添削とアドバイスお願いします
DBに接続してメールが届くように戻したいです
さらにエラーメッセージも条件の時のみ表示させたいです
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/15 05:39
2015/12/15 05:39