struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><struts-config>
<form-beans>
<form-bean name="UserLogin" type="com.serlvet.userLogin"/>
</form-beans> <action-mappings>
<action path="/login"
type="com.serlvet.Login"
name="UserLogin"
parameter="methode"
scope="request"
validate="false">
<forward name="success" path="/WEB-INF/wel.jsp" />
<forward name="failure" path="/WEB-INF/err.jsp" />
</action>
</action-mappings></struts-config>
userLogin.java
package com.serlvet;
import com.model.*;
import java.io.IOException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class userLogin extends HttpServlet { private static final long serialVersionUID = 5698967530097079333L; public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { response.setContentType("text/html");
response.setCharacterEncoding("utf-8");


//得到用户名和密码,验证用户是否合法

String username = request.getParameter("txtloginName");
        String userpassword = request.getParameter("txtpassword");

//验证用户
Login ubb=new Login();

try {
if(ubb.checkUser(username, userpassword)){

//用户合法

//把成功登录的用户信息放入session【后面用到】

UserBean ub=ubb.getUserBean(username);
request.getSession().setAttribute("userInfo", ub);

request.getRequestDispatcher("").forward(request, response);
}else{

//用户不合法

request.getRequestDispatcher("").forward(request, response);
}
} catch (CloneNotSupportedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { this.doGet(request, response);
}}
Login.java
package com.model;import java.sql.*;import com.model.OpenDB;
import com.model.UserBean;
public class Login {    public String userName;
    public String userPassword;
    private Connection dbConn;
    OpenDB dbconn = new OpenDB();
    Connection con = dbconn.getConnection();    public Login() {
        userName = "";
        userPassword = "";
        dbConn = null;
    }
    public boolean checkUser(String u,String p) throws CloneNotSupportedException{


boolean b=false;


try {

        Statement ct = null;
        ResultSet rs = null;
        ct = dbConn.createStatement();
        PreparedStatement ps=null;
//top 1表示查到一条记录就返回,提高查询速度
ps=(PreparedStatement) ct.executeQuery("select top 1 passwd from root where username=?");

ps.setString(1, u);

rs=ps.executeQuery();

if(rs.next()){

//取出数据库的密码
String dbPasswd=rs.getString(1);

if(dbPasswd.equals(p)){

b=true;
}
}
} catch (Exception e) {
e.printStackTrace();
}finally{

//关闭资源
this.clone();
}

return b;

}
    
public UserBean getUserBean(String u) throws CloneNotSupportedException{

UserBean ub=new UserBean();
try {

Statement ct = null;
PreparedStatement ps=null;
ResultSet rs = null;
ct = dbConn.createStatement();
ps=(PreparedStatement) ct.executeQuery("select top 1 * from root where username=?");
ps.setString(1, u);
rs=ps.executeQuery();
if(rs.next()){

ub.setUserid(rs.getLong(1));
ub.setUsername(rs.getString(2));
ub.setPasswd(rs.getString(3));
}

} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}finally{
this.clone();
}

return ub;
}    public void setConnection(Connection dbConn) {
        this.dbConn = dbConn;
    }    public void update(String xguserpassword) throws SQLException {
        Statement stmt = con.createStatement();
        stmt.executeUpdate("update root set userPassword='" + xguserpassword + "'where UserID='" + userName + "'");
    }
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name />
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  
</web-app>sshweb.xml

解决方案 »

  1.   

    No action instance for path /login could be created
    The server encountered an internal error (No action instance for path /login could be created) that prevented it from fulfilling this request.
      

  2.   


    com.serlvet.Login 这个类有吗???  配置不知道没有有问题,你看看其他的action访问是否可以,做一个比较之后再看看
      

  3.   

    userLogin   这个类改成  UserLogin