调用:
<HTML>
<HEAD>
    <TITLE></TITLE>
</HEAD>
<BODY>
<%
import java.sql.*;ResultSet Rs = null;%>
<jsp:useBean id="DbBean" beanName="DbOper" class="DbOper" scope="page"></jsp:useBean>
<%
  Rs = DbOper.DbQuery( "select * from customer" );
  int iCount = Rs.getRow();
  if( iCount>0 )
  {
%>
<center><%=iCount%></center>
<%
  }
%>
</BODY>
</HTML>

解决方案 »

  1.   

    http://localhost:8080/jsp_test.jspHTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: /jsp_test.jsp(11,0) jsp.error.useBean.notBoth
    at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:94)
    at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:428)
    at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:140)
    at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:406)
    at org.apache.jasper.compiler.Node$UseBean.accept(Node.java:592)
    at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028)
    at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:1070)
    at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:1076)
    at org.apache.jasper.compiler.Node$Root.accept(Node.java:232)
    at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028)
    at org.apache.jasper.compiler.Validator.validate(Validator.java:607)
    at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:230)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:369)
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
    at java.lang.Thread.run(Thread.java:484)--------------------------------------------------------------------------------Apache Tomcat/4.1.24
      

  2.   

    我直接在页面这样写代码是成功的
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <%@ page language="java" import="java.sql.*" %>
    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    <%
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
    Connection cnn = DriverManager.getConnection("jdbc:odbc:BorlandDemosDb","admin","");
    Statement  stmt=cnn.createStatement();
    ResultSet rs = stmt.executeQuery( "select * from customer" );
    // rs.last();
    // out.println( rs.getRow() );
    while( rs.next() )
    {
    out.println( rs.getString("CustNo") );
    }
    %>
    </body>
    </html>
      

  3.   

    <jsp:useBean id="DbBean" beanName="DbOper" class="DbOper" scope="page"></jsp:useBean>
    这行有错误,改为
    <jsp:useBean id="DbBean" beanName="DbOper" class="java_test.DbOpen" scope="page"></jsp:useBean>包路径必须要写完整
      

  4.   

    package java_test;import java.sql.*;你把package java_test去掉试试看看package 是建立包的 可是你调用的时候却没有调用包
      

  5.   

    龙威讲的很对。
    另外,你在tomcat/webapps/root/web-inf/classes下建一个文件夹java_test,将你的Dboper.class文件放进去.
      

  6.   

    我的jsp:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <%@ page language="java" import="java.sql.*"%>
    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    <jsp:useBean id="BeanId" class="test.DbBean" scope="page"></jsp:useBean>
    <%
    ResultSet rs = BeanId.dbQuery( "select * from customer" );
    if( rs == null )//用这条语句检测表明 rs=null,难怪不出错。javabean中不能返回记录集?
    {
      out.println( "rs is null" );
    }
    // out.println( rs.getRow() );
    // while( rs.next() )
    {
    // out.println( rs.getString("CustNo") );
    }
    %>
    </body>
    </html>
    我的javabean:
    package test;import java.sql.*;public class DbBean{
      private String Hello = "only a test";
      private static ResultSet rs = null;
      
      public String getHello()
      {
        return Hello;
      }
      public void setHello(String newValue)
      {
        Hello = newValue;
      }
      public ResultSet dbQuery(String Sql)
      {
        try
        {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
          Connection cnn = DriverManager.getConnection("jdbc:odbc:BorlandDemosDb","admin","");
          Statement stmt = cnn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
          rs = stmt.executeQuery( Sql );
          return rs;
    //      return stmt.executeQuery( Sql );
    //      PreparedStatement stmt = cnn.prepareStatement(Sql);
    //      ResultSet rs = stmt.executeQuery();
    //      return rs;
        }
        catch( Exception e)
        {
          return null;
        }
      }
    }