<%@ page language="java" import="java.sql.*"%>                                         
<jsp:useBean id="voteBean" scope="page" class="vote.conn"/>                            
<html>                                                                                 
<head>                                                                                 
<title>当前票数统计</title>                                                            
<meta content="text/html; charset=gb_2312-80" http-equiv="Content-Type">               
<meta content="blueriver" name="Author">                                               
<meta http-equiv="refresh" content="10;URL=show.jsp"></head>                           
<body bgcolor="#FFFFFF">                                                               
<div align="center">                                                                   
  <h1><b>当前票数统计</b> </h1>                                                        
  <table width="60%" border="1">                                                       
    <tr bgcolor="#CCCCFF">                                                             
      <td width="51%">                                                                 
        <div align="center"><font color="#FF0033"><b>候选公司名</b></font></div>       
      </td>                                                                            
      <td width="49%">                                                                 
        <div align="center"><font color="#FF0033"><b>当前票数</b></font></div>         
      </td>                                                                            
    </tr>                                                                              
<%                                                                                     
ResultSet RS_result;                                                                   
RS_result=voteBean.executeQuery("select * from result");                               
String companyName;                                                                    
int voteNum;                                                                           
while(RS_result.next())                                                                
{                                                                                      
companyName=RS_result.getString("candidate");                                          
voteNum=RS_result.getInt("vote_num");                                                  
%>                                                                                     
....
</div> 
</body>
</html>
出现如下错误:java.lang.NullPointerException
at org.apache.jsp.show$jsp._jspService(show$jsp.java:93)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
是怎 么加回事!!

解决方案 »

  1.   

    如果是sql server数据库的话,加上用户名,密码connect = DriverManager.getConnection(sConnStr,"sa",""); 
    oracle数据库也加上
    connect = DriverManager.getConnection(sConnStr,"system","manager");
      

  2.   

    我用的是sql server数据,我已经加入了用户名各密码
    javabean  
    conn.java 正确但调用show.jsp
    文件仍然出错java.lang.NullPointerException
    at org.apache.jsp.show$jsp._jspService(show$jsp.java:93)
    at org.apache.jasper.runtime.HttpJspBase.service
    我的数据库里有数据。
    是怎么回事?
      

  3.   


    java.lang.UnsupportedOperationException
    at sun.jdbc.odbc.JdbcOdbcConnection.createStatement(JdbcOdbcConnection.java:1018)
    at TestBean.MyDbBean.executeQuery(MyDbBean.java:29)
    at jrun__DbBean2ejspb._jspService(Compiled Code)
    at allaire.jrun.jsp.HttpJSPServlet.service(HttpJSPServlet.java:39)
     我也在用javabean连数据库也出现了这个问题,错误是这样的。大家看看怎么改啊。
      

  4.   

    这个是我的bean程序:package TestBean;
    import java.sql.*;public class MyDbBean {
      private Statement stmt = null;
      ResultSet rs = null;
      private Connection conn = null;//构造函数
      public MyDbBean() {
      }//根据dsn参数,加载驱动程序,建立连接
      public void OpenConn(String dsn, String uid, String pwd) throws Exception {
      try {
      dsn = "jdbc:odbc:" + dsn;
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      conn = DriverManager.getConnection(dsn, uid, pwd);
      } 
      catch (Exception ex) {
       System.err.println("aq.executeQuery: " + ex.getMessage());
      }
      }//执行查询类的SQL语句,有返回集
      public ResultSet executeQuery(String sql) {
        rs = null;
        try {
        stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);    rs = stmt.executeQuery(sql);
        } 
        catch(SQLException ex) { 
         System.err.println("aq.executeQuery: " + ex.getMessage());
        }
        return rs;
      }
      
    //执行更新类的SQL语句,无返回集
      public void executeUpdate(String sql) {
        stmt = null;
        rs=null;
        try {
        stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
        stmt.executeQuery(sql);
        stmt.close();
        conn.close();
        } 
        catch(SQLException ex) { 
          System.err.println("aq.executeQuery: " + ex.getMessage());
        }
      }//关闭对象
      public void closeStmt(){
        try{
          stmt.close();
         }
        catch(SQLException ex) { 
          System.err.println("aq.executeQuery: " + ex.getMessage());
         }
      }  public void closeConn(){
        try{
          conn.close();
         }
        catch(SQLException ex) { 
          System.err.println("aq.executeQuery: " + ex.getMessage());
         }
      }
    }这个是jsp
    <%@ page contentType="text/html;charset=gb2312" %>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>使用Bean访问数据库</title></head>
    <body>
    <%@ page language="java" import="java.sql.*" %>
    <!--引用javaBean-->
    <jsp:useBean id="TestBean" scope="page" class="TestBean.MyDbBean" />
     
    <%
    //调用OpenConn方法与数据库建连接
     TestBean.OpenConn("jiaoc","sa","sa");
     String sql="select * from test";
    //调用executeQuery方法执行SQL语句,返回记录集
     ResultSet rs = TestBean.executeQuery(sql);
    //遍历记录集,输出所有记录
     while (rs.next())
     {
    //输出当前一条记录
    //rs.getMetaData().getColumnCount()获得记录的字段数 
      for(int j=1; j<=rs.getMetaData().getColumnCount(); j++)
        {
    //获得指定编号字段的值
       out.print( rs.getObject(j)+"\t");
        }
    //换行
       out.println("<BR>");    
      }
      TestBean.closeStmt();
      TestBean.closeConn();
      %></body>
    </html>
    我执行的时候就出错。
    错误是这样的。/DbBean.jsp:java.lang.UnsupportedOperationException
    at sun.jdbc.odbc.JdbcOdbcConnection.createStatement(JdbcOdbcConnection.java:1018)
    at TestBean.MyDbBean.executeQuery(MyDbBean.java:29)
    at jrun__DbBean2ejspb._jspService(Compiled Code)
    at allaire.jrun.jsp.HttpJSPServlet.service(HttpJSPServlet.java:39)
    at allaire.jrun.jsp.JSPServlet.service(Compiled Code)
    at allaire.jrun.jsp.JSPServlet.service(Compiled Code)
    at allaire.jrun.servlet.JRunSE.service(Compiled Code)
    at allaire.jrun.session.JRunSessionService.service(Compiled Code)
    at allaire.jrun.servlet.JRunSE.runServlet(Compiled Code)
    at allaire.jrun.servlet.JRunRequestDispatcher.forward(Compiled Code)
    at allaire.jrun.servlet.JRunSE.service(Compiled Code)
    at allaire.jrun.servlet.JRunSE.service(Compiled Code)
    at allaire.jrun.servlet.JvmContext.dispatch(Compiled Code)
    at allaire.jrun.http.WebEndpoint.run(Compiled Code)
    at allaire.jrun.ThreadPool.run(Compiled Code)
    at allaire.jrun.WorkerThread.run(Compiled Code)
    不知道怎么回事,我才学jsp。 能告诉我吗? 我的msn是[email protected]