org.apache.jasper.JasperException: /web002/WebRoot/check.jsp(17,3) The value for the useBean class attribute bean.UserBean1 is invalid.
登录jsp  
  </body>
  <form action="check.jsp" method="post">
     用户名 :<input type="text" name="name"><br>
     登录密码:<input type="password" name="password1"><br>
     确认密码:<input type="password" name="password2"><br>
     <input type="submit" value="登录"><input type="reset" value="重置">
   </form>
  </body>
判断的jsp<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@page import="bean.CheckBean" %>
<%request.setCharacterEncoding("GB2312"); %>
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'check.jsp' starting page</title>
  </head>
 
  <body>
   <jsp:useBean id="user" class="bean.UserBean1" scope="session"/> 
   <jsp:setProperty name="user" property="*"/>
   <%
   CheckBean cb=new CheckBean(user);
   if(cb.f())
   {
    %>
    <jsp:forward page="welcom.jsp"/>
    <%}else{ %>
   <jsp:forward page="relogin.jsp"/>
    <%} %>
  </body>
</html>

解决方案 »

  1.   

    应该是你属性不对应,建议不用这种方法。
    用set方法就行了。
      

  2.   

    你能不能帮我看看啊。找了一下午没没弄清。。
    这是UseBean1的
    package bean;
    public class UserBean1{
     public UserBean1() {

    }
    private String name;
    private String password1;
    private String password2;
    public String getName() {

    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public String getPassword1() {
    return password1;
    }
    public void setPassword1(String password1) {
    this.password1 = password1;
    }
    public String getPassword2() {
    return password2;
    }
    public void setPassword2(String password2) {
    this.password2 = password2;
    }
    }
    这是CheckBean的
    package bean;import java.sql.*;
    public class CheckBean{ private UserBean1 user;
    public CheckBean() {

    }
    public CheckBean(UserBean1 user) {
    this.user = user;
    }
    public boolean f() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException{
    Connection conn=null;
    Statement stat=null;
    ResultSet rs=null;
    boolean bo=false;
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
    String url="jdbc:odbc:j2ee";

    conn=DriverManager.getConnection(url,"vma82\\stud","");
    stat=conn.createStatement();
    String sql="select * from userinfo;";
    rs=stat.executeQuery(sql);
    while(rs.next()){
    String name=user.getName();
    String password1=user.getPassword1();
    String password2=user.getPassword2();
    if(rs.getString("name").equals(name)&&(rs.getString("password").equals(password1)&&rs.getString("password").equals(password2)))
    {
    bo=true;

    }
    else
    {
    bo= false;

    }
    }
    if(rs!=null)
    rs.close();
    if(stat!=null)
    stat.close();
    if(conn!=null)
    conn.close();
    return bo;
    }public UserBean1 getUser() {
    return user;
    }public void setUser(UserBean1 user) {
    this.user = user;
    }}
      

  3.   

    <jsp:useBean id="user" class="bean.UserBean1" scope="session"/>  
     <jsp:setProperty name="user" property="*"/>
    直接用set方法
     <jsp:useBean id="user" class="bean.UserBean1" scope="session"/>  
    <%
    String name=request.getParameter("name");
    String password1=request.getParameter("password1");
    String password2=request.getParameter("password2");user.setName(name)
    user.setPassword1(password1)
    user.setPassword2(password2)
    %>
      

  4.   

    The value for the useBean class attribute bean.UserBean1 is invalid.
    还是出现这个错误....
    这个跟用setProperty有什么区别吗?