Solved
Netscape says "Document Contains No Data"
Posted on 1998-05-07
Using Oracle WebServer Java Cartridge
Using JavaCacheTimeout = 0
I am selecting a table of 14 columns by 110 rows into an
Oracle.html table. I can display this once. If I click
on the reload button, I get a Netscape panel that says
"Document Contains No Data." If I wait 10 or 15 minutes
before I click "Reload," I can re-display the table.
HELP!!!!!
Code follows:
import oracle.html.*;
import java.util.*;
import java.io.*;
import java.lang.*;
import oracle.owas.wrb.services.http.*;
// You need to import the java.sql package to use JDBC
import java.sql.*;
// You need to import oacle.jdbc.driver in order to use the oracle exten
sions.
import oracle.jdbc.driver.*;
class mach
{
public static void main (String args [])
throws SQLException, ClassNotFoundException
{
HtmlHead hd = new HtmlHead();
HtmlBody bd = new HtmlBody();
HtmlPage hp = new HtmlPage(hd, bd);
hp.setBackgroundImage("/ows-img/stone_tile.jpg");
bd.setUnfollowedLinkColor("#cc0000");
bd.setActivatedLinkColor("#ff3300");
bd.setFollowedLinkColor("#000055");
bd.addItem(new banner("SEO Computer Inventory Table: SEO_MACHINES"));
// Load the Oracle JDBC driver
DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver(
));
// Connect to the database
try
{
Connection conn =
DriverManager.getConnection ("jdbc:oracle:oci7:@hosd010a_GLOBAL",
"UNIX_INV", "UNIX_INV");
Statement connect_one = conn.createStatement ();
ResultSet rowTotal = connect_one.executeQuery ("select count(*) f
rom SEO_MACHINES");
rowTotal.next ();
int num_rows = (int)(rowTotal.getInt (1));
((OracleConnection)conn).setDefaultRowPrefetch (30);
Statement connect_two = conn.createStatement ();
ResultSet tabRows = connect_two.executeQuery ("select * from SEO_MAC
HINES");
String [][] machines = new String[num_rows][14];
int count = 0;
while(tabRows.next ())
{
for(int j=0; j < 14; j++)
machines[count][j] = (tabRows.getString (j+1));
count++;
}
DynamicTable tab = new DynamicTable(14);
TableRow rows[] = new TableRow[num_rows];
for(int i=0; i < num_rows; i++)
rows[i] = new TableRow();
for(int i=0; i < num_rows; i++)
rows[i]
.addCell(new TableDataCell(new SimpleItem(machines[i][0]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][1]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][2]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][3]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][4]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][5]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][6]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][7]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][8]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][9]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][10]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][11]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][12]).setBold()))
.addCell(new TableDataCell(new SimpleItem(machines[i][13]).setBold()))
;
for(int i=0; i < num_rows; i++)
tab.addRow(rows[i]);
bd.addItem(tab);
rowTotal.close();
tabRows.close();
connect_one.close();
connect_two.close();
conn.close();
}
catch (SQLException ex)
{
hp.getBody().addItem("SQLException: " + ex.getMessage());
hp.printHeader();
hp.print();
return;
}
bd.addItem(SimpleItem.Paragraph)
.addItem(SimpleItem.HorizontalRule)
.addItem(SimpleItem.Paragraph);
hp.printHeader();
hp.print();
}
}