type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionorg.apache.jasper.JasperException: /110/test.jsp(3,0) The value for the useBean class attribute Border.dbconn 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:470)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
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.28 logs.
Apache Tomcat/5.0.28
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:470)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
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.28 logs.
Apache Tomcat/5.0.28
应该是这里引用dbconn出的错误,顺便问一下
<jsp:useBean id="Border" scope="page" class="Border.dbconn" />
这里为什么不用conn=Border.getConn();来实现??另外是否Border.dbconn路径正确
上面设置的ID是多少,下面的就用什么名..
conn=dbconn.getConn();
rs=dbconn.executeSQL("select * from book");
<%
ResultSet rs =null;
Connection conn=null;
conn=dbconn.getConn();
rs=dbconn.executeSQL("select * from book");把dbconn 改成 Border
.....
conn=dbconn.getConn();是这句错了,id="Border"应该是conn=Border.getConn();才对!同时,提醒楼主抽时间注意一下编程的代码规范,这样对你有好处!!!!!!!!!!!
dbconn.java
===============================
package Border;
import java.sql.*;public class dbconn{ private Connection conn=null;
private ResultSet rs=null;
private String server="127.0.0.1";
private String port="3306";
private String db="publish";
private String user="root";
private String pass="sjjifk";
private String drivername="org.git.mm.mysql.Drivrt";
private String URL="jdbc:mysql://"+server+":"+port+"/"+db+"?useUnicode=true&characterEncoding=GBK&user="+user+"&password="+pass;
//Attention:构造函数改成这样
public dbconn(){
try {
Class.forName(drivername).newInstance();
conn=DriverManager.getConnection(URL);
}
catch(Exception e){
e.printStackTrace();
}
}
public ResultSet executeSQL(String str){
try{
Statement stmt=conn.createStatement();
rs= stmt.executeQuery(str);
}
catch(Exception e){
e.printStackTrace();
}
return rs;
}
public void InsSQL(String str){
try{
Statement stmt=conn.createStatement();
rs= stmt.updateQuery(str);
}
catch(Exception e){
e.printStackTrace();
}
}
}
============================================================
test.jsp
============================================================<%@ page contentType="text/html;charset=GBK" import="java.sql.*"%><jsp:useBean id="newBorder" scope="page" class="Border.dbconn"/>
<%
ResultSet rs =null;
rs=newBorder.executeSQL("select * from book");
%>
……
======================================
updata.jsp
======================================
<%@ page contetType="text/html"; charset="GBK" import="java.sql.*"%>
<% request.setCharacterEncoding("GBK");%><jsp:useBean id="newBorder" scope="page" class="Border.dbconn"/>
<%
//Connection conn=null;
//conn=Border.getConn();
String tit=rsquest.getParameter("Title");
String prc=request.getparameter("Price");
//Statement stm=conn.createStatement();
newBorder.InsSQL("INSET INTO book(title,price) values ("+tit+","+prc+")");
%>
<jsp:forward page="text.jsp"/>
Good Luck
public ResultSet executeSQL(String str){
try{
Statement stmt=conn.createStatement();
rs= stmt.executeQuery(str);
}
catch(Exception e){
e.printStackTrace();
}
finally
{
if(conn!=null)conn.close(); //Attention:This is very important. }
return rs;
}
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:470)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
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.28 logs.改了还是出这样的错,mysql server 以经运行起来了