tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philip Kazmier, CEM R&D" <philip.kazm...@nice.com>
Subject RE: NullPointerException when using JDBC ResultSet next() method
Date Mon, 08 Apr 2002 21:54:39 GMT
I apologize but I posted the wrong code.  Here is the correct code.  Line 45
is rs.next.  I am not sure that the driver has loaded properly.  How can I
tell?

Thanks.

import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class ListAllOpenBugs extends HttpServlet
{
	public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
	{
		Connection con = null;
		//Statement stmt = null;
		ResultSet rs = null;
		int i = 0;

		res.setContentType("text/html");
		PrintWriter out = res.getWriter();

		try
		{
			// Load Oracle driver
			//DriverManager.registerDriver (new
oracle.jdbc.driver.OracleDriver());

			// Load the MySQL driver
			Class.forName("org.gjt.mm.mysql.Driver");
     
			// Connect to the local database
			//Connection conn = 
	
//DriverManager.getConnection("jdbc:oracle:thin:172.24.230.20:1521:ORCL",
"system", "manager");

			// Get a connection to the database
			con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/pssoftware?user=phi
lk&password=kirov");

			// Query the employee names 
			Statement stmt = con.createStatement (); 
			//ResultSet rset = stmt.executeQuery ("select
b.bug_row_id, b.status, ps.name, b.short_desc, b.date_opened from bug b,
ps_software ps where b.software_id = ps.pss_row_id and b.status = 1");
			ResultSet rset = stmt.executeQuery ("select sc_id
from bug_status_codes");

			// Display the result set as a list
			out.println("<HTML><HEAD><TITLE>All Open
Bugs</TITLE>");
			out.println("<LINK REL=STYLESHEET
HREF=\"..\\NICEStyle.css\">");
			out.println("</HEAD>");
			out.println("<BODY>");
			out.println("<TABLE>");
			
			while(rs.next()) 
			{
			//	if (i == 1)
			//	{
			//		i=0;
					//out.println("<TR><TD>" +
rs.getString("bug_row_id") + "</TD><TD>" + rs.getString("name") +
"</TD><TD>" + rs.getString("status") + "</TD><TD>" +
rs.getString("date_opened") + "</TD><TD>" + rs.getString("short_desc") +
"</TD></TR>");
					//out.println("<TR><TD>" +
rs.getString("bug_row_id") + "</TD></TR>");
					out.println("<TR><TD>" +
rs.getString("sc_id") + "</TD></TR>");
			//	}
			//	else
            //  { 
			//		i=1;
					//out.println("<TR><TD>" +
rs.getString("bug_row_id") + "</TD><TD>" + rs.getString("name") +
"</TD><TD>" + rs.getString("status") + "</TD><TD>" +
rs.getString("date_opened") + "</TD><TD>" + rs.getString("short_desc") +
"</TD></TR>");
					//out.println("<TR><TD>" +
rs.getString("bug_row_id") + "</TD></TR>");
			//	}
			}
			out.println("</TABLE>");
			out.println("</BODY></HTML>");

		}
		catch (ClassNotFoundException e)
		{
			out.println("Couldn't load the database driver-> " +
e.getMessage());
		}
		catch(SQLException e)
		{
			out.println("SQLException caught: " +
e.getMessage());
		}

		finally
		{
			try
			{
				if (con != null) con.close();
			}
			catch(SQLException ignored) { }
		}
	}
};

-----Original Message-----
From: August Detlefsen [mailto:augustd123@yahoo.com]
Sent: Monday, April 08, 2002 1:19 PM
To: Tomcat Users List
Subject: Re: NullPointerException when using JDBC ResultSet next()
method


The stack trace says that your NullPointer occurs on line 45, but line
45 is blank. Is there some more code that you didn't ost? Import
statements, perhaps? 

I think it probably happened here: 

stmt = con.createStatement();

-IE: You were not able to get a Connection, con is null and calling its
methods will give you the NullPointer. Are you sure the driver loaded
properly?


--- "Philip Kazmier, CEM R&D" <philip.kazmier@nice.com> wrote:
> 
> 
> I am getting this error in a servlet compiled on Win2K, using
> JDK1.3.1 and
> Tomcat 3.3 with MySQL 3.23.47:
> 
> Location: /PSSoftware/servlet/ListAllOpenBugs
> Internal Servlet Error:
> java.lang.NullPointerException
> 	at ListAllOpenBugs.doGet(ListAllOpenBugs.java:45)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java)
> 	at org.apache.tomcat.facade.ServletHandler.doService(Unknown Source)
> 	at org.apache.tomcat.core.Handler.invoke(Unknown Source)
> 	at org.apache.tomcat.core.Handler.service(Unknown Source)
> 	at org.apache.tomcat.facade.ServletHandler.service(Unknown Source)
> 	at org.apache.tomcat.core.ContextManager.internalService(Unknown
> Source)
> 	at org.apache.tomcat.core.ContextManager.service(Unknown Source)
> 	at
>
org.apache.tomcat.modules.server.Http10Interceptor.processConnection(Unknown
> Source)
> 	at org.apache.tomcat.util.net.TcpWorkerThread.runIt(Unknown Source)
> 	at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(Unknown
> Source)
> 	at java.lang.Thread.run(Thread.java:484)
> 
> 
> Here is the servlet code:
> 
> public class MySQLTest extends HttpServlet
> {
> 	public void doGet(HttpServletRequest req, HttpServletResponse res)
> throws ServletException, IOException
> 	{
> 		Connection con = null;
> 		Statement stmt = null;
> 		ResultSet rs = null;
> 
> 		res.setContentType("text/html");
> 		PrintWriter out = res.getWriter();
> 
> 		try
> 		{
> 			// Load the MySQL driver
> 			Class.forName("org.gjt.mm.mysql.Driver");
> 			//try {
> 	
> //Class.forName("twz1.jdbc.mysql.jdbcMysqlDriver");
> 			//}
> 			//catch(Exception e){out.println(e);}
> 
> 			// Get a connection to the database
> 			con =
>
DriverManager.getConnection("jdbc:mysql://localhost:3306/test?user=root&pass
> word=typhoon");
> 	
> 			// Create a statement object
> 			stmt = con.createStatement();
> 
> 			// Execute and SQL query, get a result set
> 			rs = stmt.executeQuery("SELECT * from test");
> 
> 			// Display the result set as a list
> 	
> out.println("<HTML><HEAD><TITLE>Test</TITLE></HEAD>");
> 			out.println("<BODY>");
> 			out.println("<UL>");
> 			while(rs.next()) 
> 			{
> 				out.println("<LI>" + rs.getString("test"));
> 			}
> 			out.println("</UL>");
> 			out.println("</BODY></HTML>");
> 
> 		}
> 		catch (ClassNotFoundException e)
> 		{
> 			out.println("Couldn't load the database driver-> " +
> e.getMessage());
> 		}
> 		catch(SQLException e)
> 		{
> 			out.println("SQLException caught: " +
> e.getMessage());
> 		}
> 
> 		finally
> 		{
> 			try
> 			{
> 				if (con != null) con.close();
> 			}
> 			catch(SQLException ignored) { }
> 		}
> 	}
> };
> 
> As you can see I tried this with Oracle.  I get the same result when
> I used
> Oracle.
> 
> Thanks.
> 
> Phil Kazmier
> Developer,  CEM
> NICE Systems
> Denver, Colorado
> Office (720) 264-4284
> 
> 
> --
> To unsubscribe:   <mailto:tomcat-user-unsubscribe@jakarta.apache.org>
> For additional commands: <mailto:tomcat-user-help@jakarta.apache.org>
> Troubles with the list: <mailto:tomcat-user-owner@jakarta.apache.org>
> 


__________________________________________________
Do You Yahoo!?
Yahoo! Tax Center - online filing with TurboTax
http://taxes.yahoo.com/

--
To unsubscribe:   <mailto:tomcat-user-unsubscribe@jakarta.apache.org>
For additional commands: <mailto:tomcat-user-help@jakarta.apache.org>
Troubles with the list: <mailto:tomcat-user-owner@jakarta.apache.org>

--
To unsubscribe:   <mailto:tomcat-user-unsubscribe@jakarta.apache.org>
For additional commands: <mailto:tomcat-user-help@jakarta.apache.org>
Troubles with the list: <mailto:tomcat-user-owner@jakarta.apache.org>


Mime
View raw message