1 6 7 package org.contineo.actions.communication; 8 9 import javax.servlet.http.HttpServletRequest ; 10 import javax.servlet.http.HttpServletResponse ; 11 import javax.servlet.http.HttpSession ; 12 import org.apache.log4j.Level; 13 import org.apache.log4j.Logger; 14 import org.apache.struts.action.Action; 15 import org.apache.struts.action.ActionError; 16 import org.apache.struts.action.ActionErrors; 17 import org.apache.struts.action.ActionForm; 18 import org.apache.struts.action.ActionForward; 19 import org.apache.struts.action.ActionMapping; 20 import org.apache.struts.action.ActionMessage; 21 import org.apache.struts.action.ActionMessages; 22 import org.contineo.communication.EMailAccount; 23 import org.contineo.communication.dao.EMailAccountDAO; 24 import org.contineo.core.LoggingManager; 25 import org.contineo.core.SessionManagement; 26 27 31 public class ChangeAccountAction extends Action { 32 33 37 private Logger logger; 38 39 40 41 public ChangeAccountAction() { 42 logger = LoggingManager.getLogger(this.getClass()); 43 } 44 45 public ActionForward execute(ActionMapping mapping, 46 ActionForm form, HttpServletRequest request, 47 HttpServletResponse response) { 48 ActionForward actionForward = new ActionForward(); 49 ActionErrors errors = new ActionErrors(); 50 ActionMessages messages = new ActionMessages(); 51 HttpSession session = request.getSession(); 52 if (SessionManagement.isValid(session)) { 53 try { 54 EMailAccount account = (EMailAccount)form; 55 if (account.getMailAddress() == null || account.getMailAddress().equals("") || 56 account.getProvider() == null || account.getProvider().equals("") || 57 account.getSmtpHost() == null || account.getSmtpHost().equals("") || 58 account.getHost() == null || account.getHost().equals("")) { 59 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.required")); 60 actionForward.setPath("/EditAccount.do?accountid=" + account.getAccountId()); 61 } else { 62 String username = (String )session.getAttribute("authuser"); 63 account.setUserName(username); 64 EMailAccountDAO accountDao = new EMailAccountDAO(); 65 boolean stored = accountDao.store(account); 66 if (stored) 67 messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("msg.action.saveemail")); 68 else 69 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.saveemail")); 70 actionForward.setPath("/ShowAccounts.do"); 71 } 72 } catch (Exception e) { 73 if (logger.isEnabledFor(Level.ERROR)) 74 logger.error(e.getMessage()); 75 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.saveemail")); 76 } 77 saveErrors(request, errors); 78 saveMessages(request, messages); 79 } else 80 actionForward = mapping.findForward("invalid"); 81 return actionForward; 82 } 83 } 84 | Popular Tags |