1 3 50 package com.ivata.groupware.admin.security.struts; 51 52 import javax.servlet.http.HttpServletRequest ; 53 import javax.servlet.http.HttpServletResponse ; 54 import javax.servlet.http.HttpSession ; 55 56 import org.apache.struts.action.ActionErrors; 57 import org.apache.struts.action.ActionForm; 58 import org.apache.struts.action.ActionForward; 59 import org.apache.struts.action.ActionMapping; 60 import org.apache.struts.util.RequestUtils; 61 62 import com.ivata.groupware.admin.security.Security; 63 import com.ivata.groupware.admin.security.server.SecuritySession; 64 import com.ivata.groupware.admin.setting.Settings; 65 import com.ivata.mask.MaskFactory; 66 import com.ivata.mask.util.SystemException; 67 import com.ivata.mask.web.browser.Browser; 68 import com.ivata.mask.web.struts.MaskAuthenticator; 69 70 79 public class LoginGuestAction extends LoginAction { 80 private Security security; 81 82 90 public LoginGuestAction(final Security securityParam, 91 final Settings settingsParam, 92 final MaskFactory maskFactoryParam, 93 final MaskAuthenticator authenticatorParam) { 94 super(securityParam, settingsParam, maskFactoryParam, 95 authenticatorParam); 96 this.security = securityParam; 97 } 98 99 108 protected String checkForm(final ActionMapping mappingParam, 109 final ActionForm formParam) { 110 if (!"loginForm".equals(mappingParam.getName())) { 111 return "loginGuest"; 112 } 113 return null; 114 } 115 116 139 public String execute(final ActionMapping mapping, 140 final ActionErrors errors, 141 final ActionForm formParam, 142 final HttpServletRequest request, 143 final HttpServletResponse response, 144 final HttpSession session) throws SystemException { 145 String checkForward = checkForm(mapping, formParam); 147 if (checkForward != null) { 148 return checkForward; 149 } 150 SecuritySession securitySession; 151 ActionForm form = formParam; 152 securitySession = security.loginGuest(); 153 session.setAttribute("securitySession", securitySession); 154 Browser browser = new Browser(request.getHeader("User-Agent"), null); 156 session.setAttribute("browser", browser); 157 158 form = RequestUtils.createActionForm(request, mapping, 159 mapping.getModuleConfig(), servlet); 160 if (form == null) { 161 request.setAttribute("exception", 162 new NullPointerException ( 163 "createActionForm returned null form for mapping '" 164 + mapping.getName() 165 + "' in LoginGuestAction")); 166 return "error"; 167 } 168 session.setAttribute("loginForm", form); 169 return "success"; 170 } 171 172 173 189 public ActionForward execute(final ActionMapping mapping, 190 final ActionForm form, 191 final HttpServletRequest request, 192 final HttpServletResponse response) throws Exception { 193 setLogin(true); 195 return super.execute(mapping, form, request, response); 196 } 197 } 198 | Popular Tags |