源码如下:
<%@ page contentType="text/html; charset=GBK" %><!--指定本页文字编码为GBK-->
<%@ page import="grad.util.user.*;"%><!--引入user包下的user和op_user类-->
<%@ page session="true" %><!--设置session有效-->
<html>
<head>
<title>
login
</title>
</head>
<body bgcolor="#ffffff">
<h1>
<%
String password=request.getParameter("password");
String usercode=request.getParameter("user");
String type=request.getParameter("type");
op_user ope=new op_user();//构造用户管理对象
if(ope.isLogin(usercode,password,type)){//调用isLogin方法判断是否允许用户登录
user us=ope.getUserByUserCode(usercode,type);//允许用户登录则取得用户信息
session.setAttribute("usercode",usercode);//把用户编号写入session
session.setAttribute("usertype",new Integer(us.getType()));//把用户类型写入session
switch (us.getType())
{
case 1:response.sendRedirect("student/index.htm");break; //登录用户是学生
case 2:response.sendRedirect("teacher/index.htm");break; //登录用户是老师
case 3:response.sendRedirect("admin/index.htm");break; //登录用户是管理员
default:response.sendRedirect("index.jsp");break;
}
}else{
out.print("<script language=\"javascript\">alert(\"请重新登录\")</script>");
response.sendRedirect("index.jsp");
}
%>
</h1>
</body>
</html>
感觉是环境配置问题,但是不知怎样修正,这个的前一个界面是登陆,刚开始报下面的错,
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 12 in the jsp file: /WebRoot/login.jsp
op_user cannot be resolved to a type
9: </head>
10: <body bgcolor="#ffffff">
11: <h1>
12: <%
13: String password=request.getParameter("password");
14: String usercode=request.getParameter("user");
15: String type=request.getParameter("type");
An error occurred at line: 12 in the jsp file: /WebRoot/login.jsp
op_user cannot be resolved to a type
9: </head>
10: <body bgcolor="#ffffff">
11: <h1>
12: <%
13: String password=request.getParameter("password");
14: String usercode=request.getParameter("user");
15: String type=request.getParameter("type");
An error occurred at line: 12 in the jsp file: /WebRoot/login.jsp
user cannot be resolved to a type
9: </head>
10: <body bgcolor="#ffffff">
11: <h1>
12: <%
13: String password=request.getParameter("password");
14: String usercode=request.getParameter("user");
15: String type=request.getParameter("type");
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.连续刷新两次以后就报这个错:
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: org.apache.jasper.JasperException: Unable to load class for JSP
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:156)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause org.apache.jasper.JasperException: Unable to load class for JSP
org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:600)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.lang.ClassNotFoundException: org.apache.jsp.WebRoot.login_jsp
java.net.URLClassLoader$1.run(URLClassLoader.java:200)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:188)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.
<%@ page contentType="text/html; charset=GBK" %><!--指定本页文字编码为GBK-->
<%@ page import="grad.util.user.*;"%><!--引入user包下的user和op_user类-->
<%@ page session="true" %><!--设置session有效-->
<html>
<head>
<title>
login
</title>
</head>
<body bgcolor="#ffffff">
<h1>
<%
String password=request.getParameter("password");
String usercode=request.getParameter("user");
String type=request.getParameter("type");
op_user ope=new op_user();//构造用户管理对象
if(ope.isLogin(usercode,password,type)){//调用isLogin方法判断是否允许用户登录
user us=ope.getUserByUserCode(usercode,type);//允许用户登录则取得用户信息
session.setAttribute("usercode",usercode);//把用户编号写入session
session.setAttribute("usertype",new Integer(us.getType()));//把用户类型写入session
switch (us.getType())
{
case 1:response.sendRedirect("student/index.htm");break; //登录用户是学生
case 2:response.sendRedirect("teacher/index.htm");break; //登录用户是老师
case 3:response.sendRedirect("admin/index.htm");break; //登录用户是管理员
default:response.sendRedirect("index.jsp");break;
}
}else{
out.print("<script language=\"javascript\">alert(\"请重新登录\")</script>");
response.sendRedirect("index.jsp");
}
%>
</h1>
</body>
</html>
感觉是环境配置问题,但是不知怎样修正,这个的前一个界面是登陆,刚开始报下面的错,
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 12 in the jsp file: /WebRoot/login.jsp
op_user cannot be resolved to a type
9: </head>
10: <body bgcolor="#ffffff">
11: <h1>
12: <%
13: String password=request.getParameter("password");
14: String usercode=request.getParameter("user");
15: String type=request.getParameter("type");
An error occurred at line: 12 in the jsp file: /WebRoot/login.jsp
op_user cannot be resolved to a type
9: </head>
10: <body bgcolor="#ffffff">
11: <h1>
12: <%
13: String password=request.getParameter("password");
14: String usercode=request.getParameter("user");
15: String type=request.getParameter("type");
An error occurred at line: 12 in the jsp file: /WebRoot/login.jsp
user cannot be resolved to a type
9: </head>
10: <body bgcolor="#ffffff">
11: <h1>
12: <%
13: String password=request.getParameter("password");
14: String usercode=request.getParameter("user");
15: String type=request.getParameter("type");
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.连续刷新两次以后就报这个错:
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: org.apache.jasper.JasperException: Unable to load class for JSP
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:156)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause org.apache.jasper.JasperException: Unable to load class for JSP
org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:600)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.lang.ClassNotFoundException: org.apache.jsp.WebRoot.login_jsp
java.net.URLClassLoader$1.run(URLClassLoader.java:200)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:188)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.
解决方案 »
- 为什么我MyEclipse中其中一个项目Tomcat不编译里面的Java文件,另一个项目就可以编译。
- javax.xml.ws.soap.SOAPFaultException: Cannot find dispatch method for test
- tomcat运行一段时间后,c3p0报错
- 一个JSF布局的问题
- 帮帮忙,新手一天没有弄明白
- 面试:JAV中除了'new'外,还有其它其它方法实例化对象吗?
- 请问怎么打印表单中的数据,不而打印表格呢???
- 请问web页面如何实现键盘精灵功能,急!
- 各位都用什么工具开发jsp啊?老大们谈谈开发经验吧
- 用maven创建web项目的时候,我的目录怎么和别人的不一样
- There is no Action mapped for action name HelloStruts2World
- spring freemarker 获取 map 在线等待,那位用空帮帮忙 谢谢
2 把这个类放到你的WEB-INF/classes/grad/util/user/ 目录下面
java.lang.ClassNotFoundException: org.apache.jsp.WebRoot.login_jsp
无法导入类,类找不到.....
op_user ope=new op_user();//构造用户管理对象
看下你的grad.util.user.*包中是否有op_user类,有的话是否编译,以及路径是否正确`
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
import grad.util.DataBase;
import grad.util.course.*;
import grad.util.user.*;
import java.sql.*;
import java.util.*;public class Op_user {
public Op_user() {
}
/**
* 通过用户编号和用户类型,返回用户的详细信息
* @param user_code
* @param type
* @return
*/
public user getUserByUserCode(String user_code,String type){
Connection conn=null;
Statement st=null;
ResultSet rs=null;
String sql ="select * from t_user where account='"+user_code+"' and type='"+type+"'";
try{
DataBase ds = new DataBase();
conn = ds.conn;
st = conn.createStatement();
user us=new user();
rs = st.executeQuery(sql);
if (rs.next()) {
us.setId(rs.getInt(1));
System.out.println(rs.getString(2));
us.setAccount(rs.getString(2));
us.setPassword(rs.getString(3));
us.setType(rs.getInt(4));
us.setName(rs.getString(5));
us.setSex(rs.getString(6));
us.setCollege(rs.getString(7));
us.setTeacher(rs.getString(8));
}
return us;
}catch(Exception e){System.out.println(e.getMessage());return null;}
}
}
if(ope.isLogin(usercode,password,type)){//调用isLogin方法判断是否允许用户登录
user us=ope.getUserByUserCode(usercode,type);//允许用户登录则取得用户信息
session.setAttribute("usercode",usercode);//把用户编号写入session
session.setAttribute("usertype",new Integer(us.getType()));//把用户类型写入session
switch (us.getType())
你的op_user类里面没有isLogin(usercode,password,type))这个方法啊~~
一下时全部源码:
package grad.util.user;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
import grad.util.DataBase;
import grad.util.course.*;
import grad.util.user.*;
import java.sql.*;
import java.util.*;public class Op_user {
public Op_user() {
}
/**
* 通过用户编号和用户类型,返回用户的详细信息
* @param user_code
* @param type
* @return
*/
public user getUserByUserCode(String user_code,String type){
Connection conn=null;
Statement st=null;
ResultSet rs=null;
String sql ="select * from t_user where account='"+user_code+"' and type='"+type+"'";
try{
DataBase ds = new DataBase();
conn = ds.conn;
st = conn.createStatement();
user us=new user();
rs = st.executeQuery(sql);
if (rs.next()) {
us.setId(rs.getInt(1));
System.out.println(rs.getString(2));
us.setAccount(rs.getString(2));
us.setPassword(rs.getString(3));
us.setType(rs.getInt(4));
us.setName(rs.getString(5));
us.setSex(rs.getString(6));
us.setCollege(rs.getString(7));
us.setTeacher(rs.getString(8));
}
return us;
}catch(Exception e){System.out.println(e.getMessage());return null;}
}
/**
* 往数据库添加一条用户记录
* @param us -用户对象
* @return
*/
public boolean addUser(user us)
/**
* 更新用户信息
* @param us -用户对象
* @return
*/
public boolean updateUser(user us)
/**
* 查询选择了指定course_id课程的全部学生
* @param course_id-课程编号
* @return
*/
public ArrayList getAllStudent(String course_id)
/**
* 供管理员查询用户信息,管理员可以按帐号,姓名,院系查询用户信息
* @param account
* @param name
* @param college
* @param type
* @return
*/
public ArrayList getAllUserQuery(String account,String name,String college,String type)
/**
* 判断是否允许用户登录
* @param user_code
* @param password
* @param type
* @return
*/
public boolean isLogin(String user_code,String password,String type)
/**
* 修改密码
* @param user_code
* @param password
* @return
*/
public boolean modPass(String user_code,String password)
/**
* 查询指定user_code学生选择的全部课程
* @param user_code-学生编号
* @return
*/
public ArrayList getUserCourse(String user_code)
/**
* 查询指定课程编号的课程信息
* @param cid-课程编号
* @return
*/
public course getCourseByid(String cid)
/**
* 从数据库中取出全部课程
* @return
*/
public ArrayList getAllCourse()
/**
* 管理员查询用,管理员可以按课程编号,课程名称,任课教师查询课程信息
* @param course_code
* @param course_name
* @param course_tech
* @return
*/
public ArrayList getAllCourseQuery(String course_code,String course_name,String course_tech)
/**
* 添加一门新课程
* @param cs
* @return
*/
public boolean addCourse(course cs)
/**
* 更新课程信息
* @param cs-课程对象
* @return
*/
public boolean updateCourse(course cs)
/**
* 添加选课记录
* @param couserid-课程编号
* @param userid-学生编号
* @return
*/
public boolean addXk(String couserid,String userid)
/**
* 管理员添加学生时,先判断数据库中该学生记录是否已经存在
* @param userid
* @return
*/
public boolean isStuExist(String userid)
{
Connection conn=null;
Statement st=null;
ResultSet rs=null;
ArrayList al=new ArrayList();
course cs=new course();
String sql ="select * from t_user where account='"+userid+"'";
try{
DataBase ds = new DataBase();
conn = ds.conn;
st = conn.createStatement();
rs = st.executeQuery(sql);
if(rs.next())return true;else return false;
}
catch (Exception e) {
System.out.println(e.getMessage());
return false;
}
}
/**
* 管理员添加课程时,先看课程是否已经存在
* @param courseid
* @return
*/
public boolean isCourseExist(String courseid)
{
Connection conn=null;
Statement st=null;
ResultSet rs=null;
ArrayList al=new ArrayList();
course cs=new course();
String sql ="select * from t_course where course_code='"+courseid+"'";
try{
DataBase ds = new DataBase();
conn = ds.conn;
st = conn.createStatement();
rs = st.executeQuery(sql);
if(rs.next())return true;else return false;
}
catch (Exception e) {
System.out.println(e.getMessage());
return false;
} }
/**
* 删除用户信息
* @param userid
* @param type
*/
public void delUser(String userid,String type)
{
Connection conn=null;
Statement st=null;
ResultSet rs=null;
if(userid==null)userid="";
course cs=new course();
String sql ="delete from t_user where account='"+userid.trim()+"'";
try{
DataBase ds = new DataBase();
conn = ds.conn;
st = conn.createStatement();
System.out.println(sql);
st.executeUpdate(sql);
if(type.equals("T"))this.delXk(userid,"T");
if(type.equals("S"))this.delXk(userid,"S"); }
catch (Exception e) {
System.out.println(e.getMessage());
return ;
} }
/**
* 删除选课记录
* @param cORuid
* @param type
*/
public void delXk(String cORuid,String type)
{
Connection conn=null;
Statement st=null;
ResultSet rs=null;
String sql="";
course cs=new course();
if(type.equals("T"))
sql ="delete * from xk_record where course_id='"+cORuid+"'";
if(type.equals("S"))
sql ="delete * from xk_record where user_code='"+cORuid+"'";
try{
DataBase ds = new DataBase();
conn = ds.conn;
st = conn.createStatement();
System.out.println(sql);
st.executeUpdate(sql);
}
catch (Exception e) {
System.out.println(e.getMessage());
return ;
}
}
/**
* 删除课程
* @param courseid
*/
public void delCourse(String courseid)
/**
* 管理员添加选课记录时,先看选课记录是否已经存在
* @param stuid
* @param courseid
* @return
*/
public boolean isXkExist(String stuid,String courseid)
}