0
我有一個簡單的網絡應用程序:無法超越ActionForm子類
它有一個簡單的登錄頁面,用戶名和密碼。
我已經創建了一個ActionForm的子類,稱爲LoginForm的:
public class LoginForm extends ActionForm
{
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public ActionErrors validate(ActionMapping mapping,HttpServletRequest request)
{
ActionErrors errors=new ActionErrors();
System.out.println("In LoginForm");
if(username.equals(""))
{
errors.add("username",new ActionMessage("loginerror.usernameEmpty"));
}
else if(password.equals(""))
{
errors.add("password",new ActionMessage("loginerror.passwordEmpty"));
}
return errors;
}
public void reset(ActionMapping mapping,HttpServletRequest request)
{
this.username=null;
this.password=null;
}
}
而且一個Action子類:LoginAction中
public class LoginAction extends Action
{
public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServlet response)
{
LoginForm loginform=(LoginForm)form;
String username=loginform.getUsername();
String password=loginform.getPassword();
System.out.println("Username="+username+" & Password="+password);
if(username.equals("lokesh"))
{
ActionMessages errors=new ActionMessages();
errors.add("username",new ActionMessage("loginerror.usernameInvalid"));
saveErrors(request,errors);
return mapping.getInputForward();
}
return mapping.findForward("success");
}
}
Struts的Action映射:
<action-mappings>
<action path="/login" type="occ.controller.LoginAction" name="LoginForm" scope="request" validate="true" input="/index.jsp" >
<forward name="success" path="/index.jsp" />
</action>
</action-mappings>
現在ActionForm的校驗正在變得完美,但在LoginAction中完成的複雜驗證不起作用。
頁面空白。
[我已經排除了進口故意]
問題是? – 2011-03-18 12:56:20
檢查您是否正確轉發到頁面。該頁面變爲空白表示struts無法正確轉發頁面。 – ashishjmeshram 2011-03-18 13:11:42