在你自己的web目录下的web-inf/classes
解决方案 »
- hibernate一对多条件查询问题
- jxl 导出excel 报Socket closed错误
- openflashchart 统计
- JSP中的ID问题
- MYECLIPSE XFIRE开发WS错误:Illegal to have multiple roots (start tag in epilog?).
- java中有没有类似C#中Tabcontrol控件
- POI按模板生成多个sheet的问题
- 请教:怎样用java实现在oracle数据库中进行图片的插入和取得操作
- 初学者JBuilder9 EJB CMP问题,执行ejb组件问题
- 初学ejb,小问题,请赐教。。。
- Struts 问题
- JAVA中如何把查找出来的记录生成到EXCEL文件里(在线)
补充一下 bean最好带上包 这样在JSP页面中用到bean时就不会出错
D:\tomcat_5.0.3\webapps\ROOT\test\xmsb\sb\index2.jsp (使用了bean:DBManager)
结果:
HTTP Status 500 - --------------------------------------------------------------------------------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 JSPAn error occurred at line: 4 in the jsp file: /test/xmsb/sb/s_checklogin.jsp
Generated servlet error:
D:\tomcat_5.0.3\work\Catalina\localhost\_\org\apache\jsp\test\xmsb\sb\s_005fchecklogin_jsp.java:46: cannot resolve symbol
symbol : class DBManager
location: class org.apache.jsp.test.xmsb.sb.s_005fchecklogin_jsp
DBManager s_checklogin = null;
^
An error occurred at line: 4 in the jsp file: /test/xmsb/sb/s_checklogin.jsp
Generated servlet error:
D:\tomcat_5.0.3\work\Catalina\localhost\_\org\apache\jsp\test\xmsb\sb\s_005fchecklogin_jsp.java:48: cannot resolve symbol
symbol : class DBManager
location: class org.apache.jsp.test.xmsb.sb.s_005fchecklogin_jsp
s_checklogin = (DBManager) _jspx_page_context.getAttribute("s_checklogin", PageContext.PAGE_SCOPE);
^
An error occurred at line: 4 in the jsp file: /test/xmsb/sb/s_checklogin.jsp
Generated servlet error:
D:\tomcat_5.0.3\work\Catalina\localhost\_\org\apache\jsp\test\xmsb\sb\s_005fchecklogin_jsp.java:50: cannot resolve symbol
symbol : class DBManager
location: class org.apache.jsp.test.xmsb.sb.s_005fchecklogin_jsp
s_checklogin = new DBManager();
^
An error occurred at line: 4 in the jsp file: /test/xmsb/sb/s_checklogin.jsp
Generated servlet error:
Note: D:\tomcat_5.0.3\work\Catalina\localhost\_\org\apache\jsp\test\xmsb\sb\s_005fchecklogin_jsp.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
3 errors org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:437)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:497)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.30 logs.
--------------------------------------------------------------------------------Apache Tomcat/5.0.30请问,是配置问题,还是DBManager类的问题,还是其他??
D:\tomcat_5.0.3\webapps\ROOT\test\xmsb\sb\index2.jsp
--------------------------------------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="erro.jsp" %>
<!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=gb2312">
<title>项目申报 - 申报单位登陆</title>
<!-- 提交前判断文本域是否填入数据 -->
<script language="JavaScript" type="text/javascript">
function check(form1) {
if(form1.tf1.value=="") {
alert("没有输入单位代码");
form1.tf1.focus ();
return false;
}
if(form1.tf2.value=="") {
alert("没有输入密码");
form1.tf2.focus ();
return false;
}
}
</script>
</head>
<body>
项目申报 - 申报单位登陆<br>
<form action="s_checklogin.jsp" method="post" name="form1" onSubmit="return check(this)">
单位代码<input name="tf1" type="text">
密码<input name="tf2" type="password">
<input name="提交" type="submit">
</form>
<%
String s1=(String)session.getValue("login");
if(s1==null) s1="";
%>
<%=s1%>
</body>
</html>D:\tomcat_5.0.3\webapps\ROOT\test\xmsb\sb\WEB-INF\classes\DBManager\DBManager.java
----------------------------------------------------------------------------------
package DBManager;
import java.sql.*;
public class DBManager {
//1.Driver
String s1="sun.jdbc.odbc.JdbcOdbcDriver";
//2.DNS
String s2="jdbc:odbc:DBManager";
//3.Connection
Connection con1=null;
//4.SQL Statement
Statement stm1=null;
//5.Result Set
ResultSet rs1=null;
//6.Loading JDBC class
public DBManager() {
try {
Class.forName(s1);
} catch(java.lang.ClassNotFoundException e1) {
System.err.println("[Exception] DBManagerLsj20041208 \nDBManager.DBManager() :"+e1.getMessage());
}
}
//7.Execute first query.
// Create connection to DNS; [test DNS]
// Create statement by connection; [test connection]
// Execute query by statement , return result set [execute sql query]
public ResultSet executeQuery(String s3) {
rs1=null;
try {
con1=DriverManager.getConnection(s2,"sa","sa");
stm1=con1.createStatement();
rs1=stm1.executeQuery(s3);
} catch(SQLException sqle1) {
System.err.println("[Exception] DBManagerLsj20041208 \nDBManager.executeQuery(String s3) :"+sqle1.getMessage());
}
return rs1;
}
//8.Execute second query. [when db must update] ==7
// Create connection to DNS; [test DNS]
// Create statement by connection; [test connection]
// Execute query by statement , return result set [execute sql query]
public void executeUpdate(String s4) {
stm1=null;
rs1=null;
try {
con1=DriverManager.getConnection(s2,"sa","sa");
stm1=con1.createStatement();
stm1.executeQuery(s4);
stm1.close();
con1.close();
} catch(SQLException e1) {
System.err.println("[Exception] DBManagerLsj20041208 \nDBManager.executeUpdate(String s4) :"+e1.getMessage());
}
}
//9.Close statement before close connection [I/O]
public void closeStm() {
try {
stm1.close();
} catch(SQLException e1) {
e1.printStackTrace();
}
}
//10.Close connection [I/O]
public void closeCon() {
try {
con1.close();
} catch(SQLException e1) {
e1.printStackTrace();
}
}
}D:\tomcat_5.0.3\webapps\ROOT\test\xmsb\sb\s_checklogin.jsp
------------------------------------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!-- Use bean -->
<jsp:useBean id="s_checklogin" scope="page" class="DBManager"></jsp:useBean>
<%
//Get the id and password
String s1=request.getParameter("tf1");
String s2=request.getParameter("tf2");
//Form sql statement
String s3="SELECT * FROM i_s_login WHERE unit_id='"+s1+"' AND password='"+s2+"'";
//Use the class : DBManager.executeQuery(String s3)
ResultSet rs1=s_checklogin.executeQuery(s3);
//check the id and password from DB
if(rs1.next()) {
//[I/O]
//1.Close the ResultSet
rs1.close();
//2.Close the s_checklogin's statement
s_checklogin.closeStm();
//3.Close the s_checklogin's connection
s_checklogin.closeCon();
//4.Creat session
session.putValue("login","ok");
session.putValue("unit_id",s1);
//5.Rdirect user to new page (login successful)
response.sendRedirect("s_index.jsp");
}
else {
//1.Close the ResultSet
rs1.close();
//2.Close the s_checklogin's statement
s_checklogin.closeStm();
//3.Close the s_checklogin's connection
s_checklogin.closeCon();
//4.Creat session
session.putValue("login","单位代码或密码错误");
//5.Rdirect user to new page (new login)
response.sendRedirect("index2.jsp");
}
%>请各位再帮忙看看。
http://localhost:8080/test/sb/s_checklogin.jsp 运行后提示HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: /test/sb/s_checklogin.jsp(4,0) The value for the useBean class attribute DBManager.DBManager is invalid.
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:150)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1227)
org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1116)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219)
org.apache.jasper.compiler.Node$Root.accept(Node.java:456)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
org.apache.jasper.compiler.Generator.generate(Generator.java:3272)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:244)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:495)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.30 logs.
--------------------------------------------------------------------------------Apache Tomcat/5.0.30
^_^
s_checklogin.jsp------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %><!-- Use bean -->
<jsp:useBean id="dbm1" scope="page" class="DBManager.DBManager"></jsp:useBean>
<%
//Get the id and password
String s1=request.getParameter("tf1");
String s2=request.getParameter("tf2");
//Form sql statement
String s3="SELECT * FROM i_s_login WHERE unit_id='"+s1+"' AND password='"+s2+"'";
//Use the class : DBManager.executeQuery(String s3)
ResultSet rs1=s_checklogin.executeQuery(s3);
//check the id and password from DB
if(rs1.next()) {
//[I/O]
//1.Close the ResultSet
rs1.close();
//2.Close the s_checklogin's statement
dbm1.closeStm();
//3.Close the s_checklogin's connection
dbm1.closeCon();
//4.Creat session
session.putValue("login","ok");
session.putValue("unit_id",s1);
//5.Rdirect user to new page (login successful)
response.sendRedirect("s_index.jsp");
}
else {
//1.Close the ResultSet
rs1.close();
//2.Close the s_checklogin's statement
dbm1.closeStm();
//3.Close the s_checklogin's connection
dbm1.closeCon();
//4.Creat session
session.putValue("login","单位代码或密码错误");
//5.Rdirect user to new page (new login)
response.sendRedirect("index2.jsp");
}
%>
DBManager.java----------------------------------------------------------
package DBManager;import java.sql.*;public class DBManager {
//1.Driver
String s1="sun.jdbc.odbc.JdbcOdbcDriver";
//2.DNS
String s2="jdbc:odbc:DBManager";
//3.Connection
Connection con1=null;
//4.SQL Statement
Statement stm1=null;
//5.Result Set
ResultSet rs1=null;
//6.Loading JDBC class
public DBManager() {
try {
Class.forName(s1);
} catch(java.lang.ClassNotFoundException e1) {
System.err.println("[Exception] DBManagerLsj20041208 \nDBManager.DBManager() :"+e1.getMessage());
}
} //7.Execute first query.
// Create connection to DNS; [test DNS]
// Create statement by connection; [test connection]
// Execute query by statement , return result set [execute sql query]
public ResultSet executeQuery(String s3) {
rs1=null;
try {
con1=DriverManager.getConnection(s2,"sa","sa");
stm1=con1.createStatement();
rs1=stm1.executeQuery(s3);
} catch(SQLException sqle1) {
System.err.println("[Exception] DBManagerLsj20041208 \nDBManager.executeQuery(String s3) :"+sqle1.getMessage());
}
return rs1;
}
//8.Execute second query. [when db must update] ==7
// Create connection to DNS; [test DNS]
// Create statement by connection; [test connection]
// Execute query by statement , return result set [execute sql query]
public void executeUpdate(String s4) {
stm1=null;
rs1=null;
try {
con1=DriverManager.getConnection(s2,"sa","sa");
stm1=con1.createStatement();
stm1.executeQuery(s4);
stm1.close();
con1.close();
} catch(SQLException e1) {
System.err.println("[Exception] DBManagerLsj20041208 \nDBManager.executeUpdate(String s4) :"+e1.getMessage());
}
}
//9.Close statement before close connection [I/O]
public void closeStm() {
try {
stm1.close();
} catch(SQLException e1) {
e1.printStackTrace();
}
} //10.Close connection [I/O]
public void closeCon() {
try {
con1.close();
} catch(SQLException e1) {
e1.printStackTrace();
}
}
}
s_checklogin.jsp---------------------erro---------------erro---------
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: /test/sb/s_checklogin.jsp(4,0) The value for the useBean class attribute DBManager.DBManager is invalid.
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:150)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1227)
org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1116)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219)
org.apache.jasper.compiler.Node$Root.accept(Node.java:456)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
org.apache.jasper.compiler.Generator.generate(Generator.java:3272)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:244)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:495)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)note The full stack trace of the root cause is available in the Apache Tomcat/5.0.30 logs.
----------------------------------------------------------------------请帮忙看看。谢谢。
如果是打包成.jar了,放在/WEB-INF/lib目录下。
|
---test
|
------|WEB-INF
| |
| classes
| |
| DBManager.java
| DBManager
| |
| DBManager.class
|sb
|
s_checklogin.jsp