📄 accountresultaction.java
字号:
package com.ebusiness.ebank.action;import java.util.Locale;import java.util.List;import java.util.Iterator;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import org.apache.struts.action.ActionMessage;import org.apache.struts.action.ActionErrors;import org.apache.struts.action.ActionMessages;import org.apache.log4j.Logger;import org.apache.log4j.MDC;import org.apache.struts.Globals;import com.ebusiness.ebank.form.AccountForm;import com.ebusiness.ebank.servicedelegate.AccountAccessDelegate;import com.ebusiness.ebank.bean.AccountValue;import com.ebusiness.ebank.bean.ValueList;import com.ebusiness.ebank.criteria.StatementSearchCriteria;import com.ebusiness.ebank.exception.BusinessException;import com.ebusiness.ebank.exception.SystemException;import com.ebusiness.ebank.util.Constants;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2005</p> * <p>Company: eBusiness Inc., All right reserved</p> * @author unascribed * @version 1.0 */public class AccountResultAction extends Action{ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { Logger log = Logger.getLogger(this.getClass()); MDC.put("userid", request.getRemoteUser()); HttpSession session = request.getSession(false); Locale locale = (Locale)session.getAttribute(Globals.LOCALE_KEY); AccountForm accountForm = (AccountForm)form; String action = accountForm.getAction(); ActionErrors errors = new ActionErrors(); // default forward String forward="failure"; if ("back".equalsIgnoreCase(action)) forward = "back"; else if (("editAccount").equalsIgnoreCase(action)) { try { AccountForm aForm = getAccountForm(session, accountForm, locale); session.setAttribute(Constants.ACCOUNT_FORM, aForm); forward = "edit"; } catch (Exception e) { log.error(e.getMessage(),e) ; forward = "error" ; } } else if (action.endsWith("Statement")) { try { StatementSearchCriteria criteria = new StatementSearchCriteria(); AccountForm aForm = getAccountForm(session, accountForm, locale); criteria.setAccountNo(aForm.getAccountNo()); criteria.setAccountType(aForm.getAccountType()); ValueList vList = AccountAccessDelegate.search(criteria); request.setAttribute(Constants.VALUE_LIST, vList.getSearchResults()); request.setAttribute(Constants.ACCOUNT_FORM, aForm); if (Constants.VISA_ACCOUNT.equals(aForm.getAccountType())) forward = "viewVisaStatement"; else forward = "viewStatement"; } catch (SystemException e) { log.error(e.getMessage(),e) ; forward = "error" ; } catch (BusinessException e) { errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("errors.businessException",e.getMessage(locale))); saveErrors(request,errors); forward = "failure" ; } } if (!errors.isEmpty()) { saveErrors(request, errors); forward = "failure" ; } return mapping.findForward(forward); } //Help method to get Account from the account list stored in session object private AccountForm getAccountForm(HttpSession session, AccountForm accountForm, Locale locale) throws Exception { List aList = (List)session.getAttribute(Constants.ACCOUNT_LIST); AccountValue aValue = null; for (Iterator i = aList.iterator(); i.hasNext();) { aValue = (AccountValue)i.next(); if (aValue.getObjectID() == accountForm.getObjectID()) break; } //AccountValue aValue = AccountAccessDelegate.viewAccountByOID(accountForm.getObjectID(), accountForm.getAccountType()); AccountForm aForm = (AccountForm)Class.forName("com.ebusiness.ebank.form." + aValue.getValueType() + "Form").newInstance(); aForm.mappingFromModel(aValue, locale); return aForm; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -