我用的jsp连oracle的类是conn.javapackage com.qingsoft.ga.utils;import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class conn {    java.sql.Connection   Conn   =   null;   
    javax.sql.DataSource   ds   =   null;   
    java.sql.ResultSet   rs   =   null;

public  conn() {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String user = "system";
String password = "manager";
Conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.18:1521:MYORACLE",user, password);
} catch (Exception e) {
Conn = null;
System.out.print("Error   To   Create   Connection");
}
} public ResultSet executeQuery(String sql) {
rs = null;
try {
Statement stmt = Conn.createStatement();
rs = stmt.executeQuery(sql);
} catch (SQLException ex) {
Conn = null;
rs = null;
System.err.println("aq.execute-Query:   " + ex.getMessage());
}
return rs; }}
主页index.jsp中的3个iframe是
dwml.jsp
 <%@ page  language="java" contentType="text/html;charset=gb2312" import="java.sql.*"%>     
<jsp:useBean id="dbconn" class="com.qingsoft.ga.utils.conn" scope="page"/>
<link href="images/css.css" rel="stylesheet" type="text/css" />
<SCRIPT language=JavaScript> 
function openwin(code)
{
var wincode;
wincode=code;
//window.open("khfa.jsp?id='"+wincode+"'","khfa","");          
//window.open("khjg.jsp?id='"+wincode+"'","khjg",""); 
document.getElementById("khfa").src = "khfa.jsp?id='"+wincode+"'";
document.getElementById("khjg").src = "khjg.jsp?id='"+wincode+"'";

</script>
 <%! 
ResultSet rst=null ;
%>
 <%
try
  {
   String code=request.getParameter("id");
   if(code==null){
   code="420100000001";
   }
ResultSet rst=dbconn.executeQuery("select CORP_NAME,CORP_CODE from T_B_CORP where SUP_CORP_CODE='"+code+"' and IS_USE='1'");
 if(rst==null){
  out.println("暂时没有单位!");
  }else{
  %>
  <table width="100%">
 <%
 rst.last(); // 将 Cursor 移到最后
    int size = rst.getRow(); // 取得记录数
    rst.beforeFirst(); // 将 Cursor 移到初始状态
   for(int i =1;i<=size;i++) 
  {if(i % 4 == 1){
  %>
  <tr>
  <td><a href="javascript:openwin(<%=rst.getString("CORP_CODE")%>)" class="txt"><%=rst.getString("CORP_NAME")%></a></td>
  <%}
  else if (i % 4 == 0){
   %><td><a href="javascript:openwin(<%=rst.getString("CORP_CODE")%>)" class="txt"><%=rst.getString("CORP_NAME")%></a></td></tr>  
 <%
  }
  else{
   %> 
   <td><a href="javascript:openwin(<%=rst.getString("CORP_CODE")%>)" class="txt"><%=rst.getString("CORP_NAME")%></a></td>
   <%
  } 
  }
  %>
  </table>
  <%
  rst.close();
    }
}
    catch(Exception e)
    {
    e.printStackTrace();
    }
%>

解决方案 »

  1.   

    khfa.jsp:
     <%@ page  language="java" contentType="text/html;charset=gb2312" import="java.sql.*"%>     
    <jsp:useBean id="dbconn" class="com.qingsoft.ga.utils.conn" scope="page"/>
    <link href="images/css.css" rel="stylesheet" type="text/css" />
    <%! 
    ResultSet rst=null ;
    String khsql=null;
    %>
      <%
     String code=request.getParameter("id");
       if(code==null){
       String khsql="select (select CORP_NAME from T_B_CORP where CORP_CODE =t.corp_code)CORP_NAME,UP_FILEURL,UP_TITLE,UP_TIME,CORP_CODE from T_B_UPFILES t where rownum<=15 and IS_AUDIT =1 order by UP_TIME desc";  
       }
       else
       {
        String khsql="select (select CORP_NAME from T_B_CORP where CORP_CODE =t.corp_code)CORP_NAME,UP_FILEURL,UP_TITLE,UP_TIME,CORP_CODE from T_B_UPFILES t where rownum<=15 and IS_AUDIT =1 and CORP_CODE='"+ code +"' order by UP_TIME desc";  
       }
      try
      { 
    ResultSet rst=dbconn.executeQuery(khsql);
       while(rst.next())
       {
      %>
      <table width="100%">
      <tr>
      <td width="25%"><%=rst.getString("UP_TITLE")%></td>
      <td width="25%"><%=rst.getString("UP_FILEURL")%></td>
      <td width="25%"><%=rst.getString("CORP_NAME")%></td>
      <td width="25%"><%=rst.getString("UP_TIME")%></td>
      <tr>
      </table>
      <%
      }
     
       rst.close();
        }
        catch(Exception e)
        {
        e.printStackTrace();
        }
    %>
    khjg.jsp:
    <%@ page  language="java" contentType="text/html;charset=gb2312" import="java.sql.*"%>     
    <jsp:useBean id="dbconn" class="com.qingsoft.ga.utils.conn" scope="page"/>
    <link href="images/css.css" rel="stylesheet" type="text/css" />
     <%! 
    ResultSet rst=null ;
    String jgsql=null;
    %> 
     <%
    String code=request.getParameter("id");
      if(code==null){
      String jgsql="select P_NAME,POLICE_NO,P_CORP,P_DUTY,ASSESS_DETAIL from T_B_ASSESS_DETAIL where rownum<=15 order by POLICE_NO desc";  
       }
       else
       {
       String jgsql="select P_NAME,POLICE_NO,P_CORP,P_DUTY,ASSESS_DETAIL from T_B_ASSESS_DETAIL where rownum<=15 and  CORP_CODE='"+ code +"' order by POLICE_NO desc";
       }
      try
    { ResultSet rst=dbconn.executeQuery(jgsql);
      if(rst==null){
      out.println("暂时没有信息!");
      }else{ 
      while(rst.next())
      {
     %>
      <table width="100%">
      <tr>
      <td width="20%"><%=rst.getString("POLICE_NO")%></td>
      <td width="20%"><%=rst.getString("P_NAME")%></td>
      <td width="20%"><%=rst.getString("P_DUTY")%></td>
      <td width="20%"><%=rst.getString("P_CORP")%></td>
      <td width="20%"><%=rst.getString("ASSESS_DETAIL")%></td>
      <tr>
      </table>
      <%
     }
     }
       rst.close();
        }
        catch(Exception e)
        {
        e.printStackTrace();
        }
    %> 
    数据库里面的确有数据,为什么这3个iframe不能从oracle数据库中读数据呢?
    还请大家帮我看看~谢谢~~
      

  2.   

    干,错误信息也没有
    跟踪不会啊?至少System.out.println把sql打出来看看是不是sql的问题啊?这些都是调试的基本功,不要什么都求人!
      

  3.   

    sql语句应该没问题~!
    我用这个sql语句在sql plus中可以查到数据~~~!
      

  4.   

    可取出来的rst结果集就是为null,不知道什么原因??
      

  5.   

    rst.beforeFirst(); // 将 Cursor 移到初始状态改成rst.First(); // 将 Cursor 移到初始状态
    试试
      

  6.   

    我记得好象是不能把一部分放在bean里,然后在bean外再得ResultSet,要么全部放在bean里,要么全部放在jsp里
      

  7.   

    我记得好象是不能把一部分放在bean里,然后在bean外再得ResultSet,要么全部放在bean里,要么全部放在jsp里
    这是什么意思?
    你是说public ResultSet executeQuery(String sql) {
    rs = null;
    try {
    Statement stmt = Conn.createStatement();
    rs = stmt.executeQuery(sql);
    } catch (SQLException ex) {
    Conn = null;
    rs = null;
    System.err.println("aq.execute-Query:   " + ex.getMessage());
    }
    return rs; }
    这必须放到jsp中吗?
      

  8.   

    <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    </head><body>
    <%!
     java.sql.Connection   Conn   =   null;   
     java.sql.ResultSet   rs   =   null;
    %>
    <%
    try {
    Class.forName("oracle.jdbc.driver.OracleDriver");
    String user = "system";
    String password = "manager";
    Conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.18:1521:MYORACLE",user, password);
    Statement stmt = Conn.createStatement();
    rs = stmt.executeQuery("select CORP_NAME,CORP_CODE from T_B_CORP where SUP_CORP_CODE='420100000001' and IS_USE='1'");
    } catch (Exception e) {
    Conn = null;
    rs = null;
    System.err.println("aq.execute-Query:   " + e.getMessage());
    System.out.print("Error   To   Create   Connection");
    }
    if(rs==null)
    {
    out.println(rs);
    }
    else
    {
    while(rs.next())
       {
    out.println(rs.getString("CORP_NAME"));
    }
    }
    Conn = null;
    rs = null;
    %>
    </body>
    </html>
    我全部放在jsp中,显示的结果也是null
      

  9.   

    oracleserviceMYORACLE服务
    OracleOraHome90HTTPServer服务
    OracleOraHome90TNSListener服务
    OracleOraHome90Agent服务
    也都可以正常启动~但就是连不上数据库~不知道什么原因?
      

  10.   

    type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Exception in JSP: /test.jsp:3330:  rs = null;
    31:  System.err.println("aq.execute-Query:   " + e.getMessage());
    32:  }
    33:  while(rs.next())
    34:     {
    35:  out.println(rs.getString("CORP_NAME"));
    36:  }
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.lang.NullPointerException
    org.apache.jsp.test_jsp._jspService(org.apache.jsp.test_jsp:77)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.15 logs.
    报这个错!
      

  11.   

    问题是你的问题出在test.jsp中.而这个文件我们看不到.
    顺便告诉你一下.能返回ResultSet对象的Statement.executeQuery(...)方法返回的结果永远不可能是null.
      

  12.   

    oracleserviceMYORACLE服务
    OracleOraHome90HTTPServer服务
    OracleOraHome90TNSListener服务
    OracleOraHome90Agent服务
    也都可以正常启动~但就是连不上数据库~不知道什么原因?连不上数据库时提示什么导常信息?
      

  13.   

    我把test.jsp改为<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    </head><body>
    <%!
     java.sql.Connection   Conn   =   null;   
    %>
    <%
    try {
    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    Conn= DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.147:1521:MYORACLE","system","manager");

    catch (Exception e) 
    {
    system.out.print(e);
       }
    %>
    </body>
    </html>
    然后运行test.jsp怎么报这个错呢?
    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.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.lang.NullPointerException
    org.apache.jsp.test_jsp._jspService(org.apache.jsp.test_jsp:70)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.15 logs.
    --------------------------------------------------------------------------------Apache Tomcat/5.5.15
      

  14.   

    然再刷新一遍又会报这样一个错~!
    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: 13 in the jsp file: /test.jsp
    Generated servlet error:
    system.out cannot be resolved to a type
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 13 in the jsp file: /test.jsp
    Generated servlet error:
    system.out cannot be resolved to a type
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:409)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:297)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.15 logs.
    --------------------------------------------------------------------------------
    不知道什么原因????
      

  15.   

    root cause org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 13 in the jsp file: /test.jsp
    Generated servlet error:
    system.out cannot be resolved to a type
    已经告诉你了system.out的问题.
    一定注意大小写:System.out