index.htm文件的源代码
<html>
<head>
<title>飞鸿留言版</title>
</head>
<body bgcolor="#ccccff" vlink="#000000" alink="#666666">
<div align="center">
<p><font size="7">
<b><font size="+6">飞鸿驿站</font></b>
</font></p>
<form method="post" action="index.jsp">
  <table width="75%" border="1" align="center">
    <tr>
      <td width="30%">
  <div align="right">姓名:</div>
  </td>
      <td width="70%">
  <input type="text" name="name">
  </td>
    </tr>
    <tr>
      <td width="30%">
  <div align="right">电子邮件:</div>
  </td>
      <td width="70%">
  <input type="text" name="email">
  </td>
    </tr>
    <tr>
      <td width="30%">
  <div align="right">个人主页地址:</div>
  </td>
      <td width="70%">
  <input type="text" name="url" value="http://">
  </td>
    </tr>
    <tr>
      <td width="30%">
  <p>请您留言</p>
  </td>
      <td width="70%">
  <textarea name="body" rows="5" cols="30"></textarea>
  </td>
  </tr>
  <tr>
  <td width="30%">&nbsp;</td>
  <td width="70%">&nbsp;</td>
  </tr>
  <tr>
  <td width="30%">&nbsp;</td>
  <td width="70%">
  <table width="75%">
  <tr>
  <td>
  <input type="submit" name="send" value="提交">
  </td>
  <td>
  <input type="reset" name="reset" value="重置">
  </td>
  </tr>
  </table>
  </td>
  </tr>
  </table>
  </form>
  <hr>
  </div>
  </body>
  </html>
  index.jsp文件的源代码
<html >
<head>
</head>
<body>
<%@ page language="java" import="java.sql.*,a.sql_data;"%>
<%@ page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="sqlbean" class="a.sql_data" scope="session" />
<%! String name,email,url,body,sql;%>
<%
name=request.getParameter("name");
email=request.getParameter("email");
url=request.getParameter("url");
body=request.getParameter("body");
if (name!=""&&email!=""&&body!="")
{
sql="insert into guestbook (name,email,url,body) values('"+name+"','"+email+"','"+url+"','"+body+"')";
sqlbean.executeInsert(sql);
}
else
{
out.print("<b><font color=red>Sorry,Please enter your name,email and body!!!</font></b>");
}
%>
<%
ResultSet RScount=sqlbean.executeQuery("SELECT * FROM guestbook");
int i=0;
while (RScount.next())
{
i++;
}
%>
<%-- <p><a name=see><B>Now,<%=RScount%>Records.</B></a></p>--%>
<p><B>现在有<%=i%>条纪录</B></p>
<%
RScount.close();
i=0;
%>
<p>&nbsp;</p>
<%
ResultSet RS=sqlbean.executeQuery("SELECT * FROM guestbook");
while (RS.next())
{
name=RS.getString("name");
email=RS.getString("email");
url=RS.getString("url");
body=RS.getString("body");
%>
<table border=1 width=80%>
<tr>
<td width=30%>昵称:</td><td width=70%><%=name%>
</tr>
<tr>
<td width=30%>电子邮件:</td><td width=70%><a href="mailto:<%=email%>"><%=email%></a></td>
</tr>
<tr>
<td width=30%>个人主页地址:</td><td width=70%><a href="<%=url%>"><%=url%></a></td>
</tr>
<tr>
<td width=30%>内容:</td><td width=70%><%=body%></td>
</tr>
</table>
<hr>
<%
}
RS.close();
%>
</body>
</html>sql_data.java文件的源代码
package a;
import java.sql.*;
public class sql_data
{
String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:guestbook";
Connection conn=null;
ResultSet rs=null;
public sql_data()
{
try
{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("sql_data():"+e.getMessage());
}
}
public void executeInsert(String sql)
{
try
{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{System.err.println("sql_data.executeUpdate:"+ex.getMessage());
}
}
public ResultSet executeQuery(String sql)
{
rs=null;
try
{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.err.println("sql_data.executeQuery:"+ex.getMessage());
}
return rs;
}
public void executeDelete(String sql)
   {
try
{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{System.err.println("sql_data.executeDelete:"+ex.getMessage());
}
}
}

解决方案 »

  1.   

    HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: java.lang.NullPointerException
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:435)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    root cause java.lang.NullPointerException
    org.apache.jsp.index_jsp._jspService(index_jsp.java:94)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.
    --------------------------------------------------------------------------------Apache Tomcat/6.0.14
      

  2.   

    F:\Tomcat 6.0\webapps\xtlpl这是我的虚拟目录
    F:\Tomcat 6.0\webapps\xtlpl\WEB-INF\classes\a这是我class打包后的目录