Re: jdbc servlets and jsp

From: "Nick Fankhauser" <nickf(at)ontko(dot)com>
To: <luke(at)chipcity(dot)com(dot)au>, <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: jdbc servlets and jsp
Date: 2003-09-09 03:46:53
Message-ID: NEBBLAAHGLEEPCGOBHDGKEEMIFAA.nickf@ontko.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Luke-

Are you getting an error message? Any clues other than "just don't work"?

One common problem in moving from interactive java code at the command line
to servlets/JSP is that people forget that the tomcat code will execute as
the web user (typically www_data in apache installs)

This means you have to make sure that this user has access to the database &
has the jdbc driver in the classpath, etc...

I have a tiny little FAQ for postgresql jdbc & tomcat that addresses two
common problems here:

http://www.fankhausers.com/tomcat/jdbc/

-Nick

> -----Original Message-----
> From: pgsql-jdbc-owner(at)postgresql(dot)org
> [mailto:pgsql-jdbc-owner(at)postgresql(dot)org]On Behalf Of Luke Vanderfluit
> Sent: Monday, September 08, 2003 2:52 PM
> To: pgsql-jdbc(at)postgresql(dot)org
> Subject: [JDBC] jdbc servlets and jsp
>
>
> Hi,
>
> I'm having a few probs (fun) getting jdbc to work in servlets and jsp,
> tomcat in other words.
>
> I've successfully got jdbc working with postgresql in a regular java
> class.
>
> I have tried using the same code adapted to a servlet and jsp to get a
> database connection happening from there, however no luck,
>
> Is there anything I need to set up in server.xml or web.xml before it
> can work?
>
> here is my jsp and servlet code:
> ################################
> jsp file
> -=-=-=-=
> <html>
> <head>
> </head>
> <%@ page language="java" import="java.sql.*" %>
> <body>
> <%
>
> Class.forName("org.postgresql.Driver");
> Connection myConn=DriverManager.getConnection("jdbc:postgresql:mboard",
> "luke", "");
>
> %>
> </body>
> </html>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=
> servlet code
> =-=-=-=-=-=-=-=-=-=-=-=-=-=
> import javax.servlet.*;
> import javax.servlet.http.*;
> import java.io.*;
> import java.sql.*;
> import java.text.DateFormat;
>
> /**
> * ShowEmployees creates an HTML table containing a list of all
> * employees (sorted by last name) and the departments to which
> * they belong.
> */
> public class ShowEmployees extends HttpServlet
> {
> Connection dbConn = null;
>
> /**
> * Establishes a connection to the database.
> */
> public void init() throws ServletException
> {
> String jdbcDriver = "org.postgresql.Driver";
> String dbURL = "\"jdbc:postgresql:mboard\", \"luke\", \"\"";
>
> try
> {
> Class.forName("org.postgresql.Driver").newInstance(); //load
> driver
> dbConn = DriverManager.getConnection("jdbc:postgresql:megaboard",
> "luke", ""); //connect
> }
> catch (ClassNotFoundException e)
> {
> throw new UnavailableException("JDBC driver not found:" +
> jdbcDriver);
> }
> catch (SQLException e)
> {
> throw new UnavailableException("Unable to connect to: " +
> dbURL);
> }
> catch (Exception e)
> {
> throw new UnavailableException("Error: " + e);
> }
> }
>
> /**
> * Displays the employees table.
> */
> public void service(HttpServletRequest request,
> HttpServletResponse response) throws ServletException,
> IOException
> {
> response.setContentType("text/html");
>
> PrintWriter out = response.getWriter();
>
> try
> {
> //join EMPLOYEE and DEPARTMENT tables to get all data
> String sql = "select * from message;";
>
> Statement stmt = dbConn.createStatement();
> ResultSet rs = stmt.executeQuery(sql);
>
> out.println("<HTML>");
> out.println("<HEAD><TITLE>Show Employees</TITLE></HEAD>");
> out.println("<BODY>");
> out.println("<TABLE BORDER=\"1\" CELLPADDING=\"3\">");
> out.println("<TR>");
> out.println("<TH>Name</TH>");
> out.println("<TH>Department</TH>");
> out.println("<TH>Phone</TH>");
> out.println("<TH>Email</TH>");
> out.println("<TH>Hire Date</TH>");
> out.println("</TR>");
>
> while (rs.next())
> {
> out.println("<TR>");
>
> out.println("<TD>" + rs.getString("resusername") + "</td>");
>
> out.println("</TR>");
> }
>
> out.println("</TABLE>");
> out.println("</BODY></HTML>");
>
> rs.close();
> stmt.close();
> }
> catch (SQLException e)
> {
> out.println("<H2>Database currently unavailable.</H2>");
> }
>
> out.close();
> }
> }
>
> any help would be greatly appreciated.
> thanks,
> kind regards
> Luke
>
> --
>
> ====================================
> "when my computer smiles, I'm happy"
> ===============================.~ ~,
> Luke Vanderfluit |'/']
> Mobile: 0421 276 282 \~/`
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index scan if your
> joining column's datatypes do not match
>

In response to

Browse pgsql-jdbc by date

  From Date Subject
Next Message Paul Thomas 2003-09-09 07:36:57 Re: jdbc servlets and jsp
Previous Message Luke Vanderfluit 2003-09-09 03:16:13 Re: jdbc servlets and jsp