大家好,小妹初学JAVA,目前用Eclips +Tomcat5.5 +MS SQL2000来写一个小project,目前在做登陆验证,可是始终有问题,想请各位大侠帮忙
我的login.jsp:<%--
Document : login
Created on : 16-十月-08, 下午 06:06
Author : lin
--%><%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<title>Login Form</title>
</head>
<body>
<h1>Login Form</h1> <html:form action="pages/login">
<table border="0">
<tbody>
<tr>
<td colspan="2">
<bean:write name="LoginForm" property="error" filter="false"/>
</td>
</tr>
<tr>
<td>Enter your name:</td>
<td><html:text property="name" /></td>
</tr>
<tr>
<td>Enter your password:</td>
<td><html:text property="password" /></td>
</tr>
<tr>
<td></td>
<td><html:submit value="Login" /></td>
</tr>
</tbody>
</table> </html:form> </body>
</html>我的ActionBean:LoginAction.java
package E4717;import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.struts.action.*;public class LoginAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
LoginForm loginform = (LoginForm) form;
String username = loginform.getUsername();
String password = loginform.getPassword();
String driver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url="jdbc:microsoft:sqlserver://ICIS-HP580A:1433;databaseName=E4717;";
String username="e4717";
String password="e4717";
try{
Class.forName(driver);
Connection connection=DriverManager.getConnection(url, username, password);
Statement statement=connection.createStatement();
StringBuffer strsql=new StringBuffer();
Strsql.append="SELECT * FROM TableG30 where Username='" +userid+ "' ";
ResultSet info=statement.executeQuery(strsql.toString());
info.next();
String pass = info.getString("password").trim();
if(!info.next() ||!password.equals(pass)){
DBmsg="Sorry,Wrong username or Password";
return(mapping.findForward("login"));
}
else{
return(mapping.findForward("index"));
}catch(ClassNotFoundException ex){
ex.printStackTrace();
}catch(SQLException ex){
ex.printStackTrace();
}
}
}
}我的loginForm Bean:*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/package E4717;import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;/**
*
* @author lin
*/
public class LoginForm extends org.apache.struts.action.ActionForm {
private String username;
private String passwrd;
// error message
private String error; public String getError() {
return error;
} public void setError() {
this.error =
"<span style='color:red'>Please provide valid entries for both fields</span>"; } public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
}
/**
* @return
*/
public String getUsername() {
return name;
} /**
* @param string
*/
public void setUsername(String string) {
name = string;
} /**
* @return
*/
/**
*
*/
public LoginForm() {
super();
// TODO Auto-generated constructor stub
} public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (getUsername() == null || getUsername().length() < 1) {
errors.add("username", new ActionMessage("error.username.required"));
// TODO: add 'error.username.required' key to your resources
}
return errors;
}
}
stucts config.xml里action 类<!-- Action Mapping Definitions -->
<action-mappings>
<action path="/pages/login" type="E4717.LoginAction">
<forward name="home-page" path="/WEB-INF/results/success.jsp"/>
<forward name="error-login" path="/WEB-INF/results/error-register.jsp"/>
</action>
</action-mappings>我始终找不到错误的原因,请各位给看看,非常感谢!!
我的login.jsp:<%--
Document : login
Created on : 16-十月-08, 下午 06:06
Author : lin
--%><%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<title>Login Form</title>
</head>
<body>
<h1>Login Form</h1> <html:form action="pages/login">
<table border="0">
<tbody>
<tr>
<td colspan="2">
<bean:write name="LoginForm" property="error" filter="false"/>
</td>
</tr>
<tr>
<td>Enter your name:</td>
<td><html:text property="name" /></td>
</tr>
<tr>
<td>Enter your password:</td>
<td><html:text property="password" /></td>
</tr>
<tr>
<td></td>
<td><html:submit value="Login" /></td>
</tr>
</tbody>
</table> </html:form> </body>
</html>我的ActionBean:LoginAction.java
package E4717;import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.struts.action.*;public class LoginAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
LoginForm loginform = (LoginForm) form;
String username = loginform.getUsername();
String password = loginform.getPassword();
String driver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url="jdbc:microsoft:sqlserver://ICIS-HP580A:1433;databaseName=E4717;";
String username="e4717";
String password="e4717";
try{
Class.forName(driver);
Connection connection=DriverManager.getConnection(url, username, password);
Statement statement=connection.createStatement();
StringBuffer strsql=new StringBuffer();
Strsql.append="SELECT * FROM TableG30 where Username='" +userid+ "' ";
ResultSet info=statement.executeQuery(strsql.toString());
info.next();
String pass = info.getString("password").trim();
if(!info.next() ||!password.equals(pass)){
DBmsg="Sorry,Wrong username or Password";
return(mapping.findForward("login"));
}
else{
return(mapping.findForward("index"));
}catch(ClassNotFoundException ex){
ex.printStackTrace();
}catch(SQLException ex){
ex.printStackTrace();
}
}
}
}我的loginForm Bean:*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/package E4717;import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;/**
*
* @author lin
*/
public class LoginForm extends org.apache.struts.action.ActionForm {
private String username;
private String passwrd;
// error message
private String error; public String getError() {
return error;
} public void setError() {
this.error =
"<span style='color:red'>Please provide valid entries for both fields</span>"; } public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
}
/**
* @return
*/
public String getUsername() {
return name;
} /**
* @param string
*/
public void setUsername(String string) {
name = string;
} /**
* @return
*/
/**
*
*/
public LoginForm() {
super();
// TODO Auto-generated constructor stub
} public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (getUsername() == null || getUsername().length() < 1) {
errors.add("username", new ActionMessage("error.username.required"));
// TODO: add 'error.username.required' key to your resources
}
return errors;
}
}
stucts config.xml里action 类<!-- Action Mapping Definitions -->
<action-mappings>
<action path="/pages/login" type="E4717.LoginAction">
<forward name="home-page" path="/WEB-INF/results/success.jsp"/>
<forward name="error-login" path="/WEB-INF/results/error-register.jsp"/>
</action>
</action-mappings>我始终找不到错误的原因,请各位给看看,非常感谢!!
解决方案 »
- 关于从数据查询数据一访问就报错的问题!!! 求高手指教
- java中使用memcache的问题
- hibernate order by 的问题
- 球ejb开发环境
- 请问学 JAVA 看什么书好
- 走过的路过的,有没有对jasperreport熟悉的,帮帮小弟
- 哪位高手会jb9+jboss+hibernate+oralce通过ejb访问数据库
- 请教JDO的性能优势?
- struts 报错,找不到actionMapping.
- 散分:费了九牛二马之力,成功配置EJB开发环境,各位EJB高手,漫漫EJB征程,给个好建议,
- 关于getHibernateTemplate的问题
- 请教: axis调用https web service
<form-beans>
<form-bean name="LoginForm" type="E4717.LoginForm"/>
</form-beans>