struts问题
ActionForm里面的getter方法得到的值是NULL,而不是我输入的<html:text>里面的值,这是怎么回事啊? 以下是我的配置文件和源文件,请大侠帮我看看,分不够可以再加:
<-----------------------------------struts-config.xml文件------------------------------>
<form-bean dynamic="false"
name="systemLogin_Form"
type="jp.co.feng.elearning.privacy.system.login.Login_Form">
<form-property name="managerID" type="java.lang.String" />
<form-property name="password" type="java.lang.String" />
</form-bean>
<action
path="/systemLogin"
type="jp.co.feng.elearning.privacy.system.login.Login_Action"
name="systemLogin_Form"
scope="session"
input="/system/systemLogin.jsp"
validate="true">
<forward
name="enterpriseInfoManagerMenu"
path="/system/enterpriseInfoManagerMenu.jsp"
redirect="false"
contextRelative="false" />
<forward
name="loginFailure"
path="/learner/learnerloginFailure.jsp"
redirect="false"
contextRelative="false" />
</action>
<-----------------------------------JSP文件--------------------------------------->
<%@ page language="java" contentType="text/html;charset=Windows-31J" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<html>
<head>
<META http-equiv="Content-Type" content="text/html;">
<META http-equiv="Content-Style-Type" content="text/css">
<LINK href="../../../common/css/style.css" rel="stylesheet"
<TITLE></TITLE>
</head>
<body>
<p class="style1">Login...</p>
<html:errors/>
<html:form action="/systemLogin" focus="managerID">
<table width="400" border="1">
<tr>
<td align=right>管理者ID:</td>
<td><html:text property="managerID"/></td>
</tr>
<tr>
<td align=right>密码:</td>
<td><html:password property="password"/></td>
</tr>
</table>
<html:submit/>
</html:form>
</body>
</html>
<-------------------------------------ActionForm------------------->
package jp.co.feng.elearning.privacy.system.login;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.*;
public class Login_Form extends ActionForm{
private String password;
private String managerID;
public ActionErrors validate(
ActionMapping mapping,
HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (managerID == null || managerID.trim().equals("")) {
errors.add("managerID" , new ActionMessage("nomanagerID"));
}
return errors;
}
public void reset(ActionMapping mapping, HttpServletRequest request) {
password = "";
managerID = "";
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getManagerID() {
return managerID;
}
public void setManagerID(String managerID) {
this.managerID = managerID;
}
}
问题点数:100、回复次数:3Top
1 楼fantasyCoder(Attitude is everything)回复于 2004-12-02 15:52:42 得分 50
<html:form action="/systemLogin" focus="managerID">
<html:submit/>
给日本人做..不厚道...Top
2 楼catalina()回复于 2004-12-02 16:04:40 得分 0
package jp.co.feng.elearning.privacy.system.login;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.*;
public class Login_Action extends Action{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
ActionErrors errors = new ActionErrors();
ActionForward forward = new ActionForward();
Login_Form login_Form = (Login_Form)form;
Login_Logic logic = new Login_Logic();
String password = logic.getPassword(login_Form.getManagerID());
if(password.equals(login_Form.getPassword())) {
forward = mapping.findForward("loginFailure.jsp");
//forward = mapping.findForward("enterpriseInfoManagerMenu.jsp");
}
else {
forward = mapping.findForward("enterpriseInfoManagerMenu.jsp");
}
// Finish with
return (forward);
}
}
Top
3 楼zpxocivuby(荒原困兽)回复于 2004-12-02 16:48:13 得分 50
if(password.equals(login_Form.getPassword())) {
forward = mapping.findForward("loginFailure.jsp");
//forward = mapping.findForward("enterpriseInfoManagerMenu.jsp");
错了!Top




