我用jbuilder编写jsp程序adm_user.jsp,其中使用一个javabean(op_user.java),总是提示:"adm_user.jsp": cannot find symbol; symbol  : class user, location: class org.apache.jsp.adm_005fuser_jsp,代码如下:
<%@ page session="true" %>
<jsp:useBean id="user" scope="page" class="dbtest.op_user"/>
<%
int pages=1;
String mesg = "";if (request.getParameter("page")!=null && !request.getParameter("page").equals("")) {
String requestpage = request.getParameter("page");
try {
pages = Integer.parseInt(requestpage);
} catch(Exception e) {
mesg = "你要找的页码错误!";
}
user.setPage(pages);
}
.....省略其他部分
javabean的内容如下:
package dbtest;
import java.sql.*;
import java.util.Vector;
import javax.servlet.http.HttpServletRequest;
public class op_user extends DataBase{
        private user user = new user();                         //新的用户对象
        private javax.servlet.http.HttpServletRequest request;  //建立页面请求
        private Vector userlist; //显示用户列表向量数组
        private int page = 1; //显示的页码
        private int pageSize=8; //每页显示的图书数
        private int pageCount =0; //页面总数
        private long recordCount =0;         //查询的记录总数
        private String message = "";         //出错信息提示
        private String username = "";         //注册后返回的用户名
        private long userid = 0; //注册后返回的用户ID  public op_user() {
  }
  public boolean add(HttpServletRequest req) throws Exception {
                  if (getRequest(req)) {
                    DataBase db = new DataBase();
                    db.connect();
                    stmt = db.conn.createStatement ();
                          sqlStr = "select * from [user] where username = '" + user.getusername() +"'";
                          rs = stmt.executeQuery(sqlStr);
                          if (rs.next())
                          {
                                  message = message +"该用户名已存在!";
                                  rs.close();
                                  return false;
                          }
                          sqlStr = "insert into [user] (username,password,Names,sex,Address,Phone,Post,Email) values ('";
                          sqlStr = sqlStr + dataFormat.toSql(user.getusername()) + "','";
                          sqlStr = sqlStr + dataFormat.toSql(user.getpassword()) + "','";
                          sqlStr = sqlStr + dataFormat.toSql(user.getnames()) + "','";
                          sqlStr = sqlStr + dataFormat.toSql(user.getsex()) + "','";
                          sqlStr = sqlStr + dataFormat.toSql(user.getaddress()) + "','";
                          sqlStr = sqlStr + dataFormat.toSql(user.getphone()) + "','";
                          sqlStr = sqlStr + dataFormat.toSql(user.getpost()) + "','";
                          sqlStr = sqlStr + dataFormat.toSql(user.getemail()) + "');";                          try
                          {       System.out.print(sqlStr);
                                  stmt.execute(sqlStr);
                                  sqlStr = "select max(id) from [user] where username = '" +user.getusername()+ "'";
                                  System.out.print(sqlStr);
                                  rs = stmt.executeQuery(sqlStr);
                                  while (rs.next())
                                  {
                                          userid = rs.getLong(1);
                                  }
                                  rs.close();
                                  return true;
                          }
                          catch (Exception sqle)
                          {System.out.print(sqle.getMessage());
                                  return false;
                          }
                  } else {
                          return false;
                  }          }
......
这个bean在别的jsp中已经被成功使用过,可是在op_user中总是出错,请问是什么原因啊?

解决方案 »

  1.   

    private user user = new user();
    不会报错吗?
      

  2.   

    没有报错,而且我的另一个jsp程序都用过了。
      

  3.   

    user是另外一个类,里面定义用户的一些属性。
      

  4.   

    所有的类我都放在dbtest包下面,我在另外一个jsp(reg.jsp)中使用op_user就可以,方法也是<jsp:useBean id="user" scope="page" class="dbtest.op_user"/>就可以。