Re: preoblem in jdbc postgresql and tomcat

Lists: pgsql-generalpgsql-jdbcpgsql-novice
From: java unix <javaunix123(at)yahoo(dot)co(dot)in>
To: pgsql-novice(at)postgresql(dot)org, pgsql-general(at)postgresql(dot)org, pgsql-jdbc(at)postgresql(dot)org
Subject: preoblem in jdbc postgresql and tomcat
Date: 2005-03-12 04:01:09
Message-ID: 20050312040109.71481.qmail@web8405.mail.in.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-general pgsql-jdbc pgsql-novice

hi,
i have installed postgresql-7.4.1,and tomcat4.1.31and
j2sdk1.4.2_07
for tomcat i have included path
/usr/local/jakarta-tomcat-4.1.31
for j2sdk path set is /usr/local/j2sdk1.4.2_07
and CLASSPATH SET IS:
/usr/local/pgsql/pg73jdbc3.jar:/usr/local/pgsql/pg74.215.jdbc3.jar:/usr/local/pg
sql/postgresql-8.0-310.jdbc3.jar:/usr/local/j2sdk1.4.2_07/lib/tools.jar:/usr/loc
al/j2sdk1.4.2_07/jre/lib/rt.jar:/usr/local/jakarta-tomcat-4.1.31/common/lib/serv
let.jar:/usr/local/jakarta-tomcat-4.1.31/common/lib:/usr/local/pgsql:/usr/local/
j2sdk1.4.2_07/jre/lib:/usr/local/j2sdk1.4.2_07/lib
i have included all the paths

all the above path are set in /etc/profile/
and i set path for all three jar
files:/usr/local/pgsql/pg73jdbc3.jar:/usr/local/pgsql/pg74.215.jdbc3.jar:/usr/local/pg
sql/postgresql-8.0-310.jdbc3.jar

when i run this simple java program i get
error as follows:
[root(at)roopesh bin]# javac PostgreSQLTest.java//compile
PostgreSQLTest.java: In class `PostgreSQLTest':
PostgreSQLTest.java: In method
`PostgreSQLTest.main(java.lang.String[])':
PostgreSQLTest.java:7: Exception
`java.lang.ClassNotFoundException' must be caught, or
it must be declared in the `throws' clause of `main'.

Class.forName("postgresql.Driver").newInstance();
^
PostgreSQLTest.java:7: Exception
`java.lang.InstantiationException' must be caught, or
it must be declared in the `throws' clause of `main'.

Class.forName("postgresql.Driver").newInstance();
^
PostgreSQLTest.java:7: Exception
`java.lang.IllegalAccessException' must be caught, or
it must be declared in the `throws' clause of `main'.

Class.forName("postgresql.Driver").newInstance();

my PostgreSQLTest.java is as below
import java.sql.*;



class PostgreSQLTest {
public static void main (String[] args) {
try {
Driver driver = (Driver)

Class.forName("postgresql.Driver").newInstance();
DriverManager.registerDriver(driver);



String url = "jdbc:postgresql:javatest";
Connection con =
DriverManager.getConnection(url, "postgres", "");
Statement stm = con.createStatement();



stm.setQueryTimeout(10);
ResultSet rs = stm.executeQuery("select col1
from test");



rs.next();



System.out.println(rs.getString(1));



} catch (SQLException e) {



System.out.println("Exception!");
System.out.println(e.toString());
}
}
}
This is one simple example

Now when i tried to perform operations with tomcat
simple sevlet works but with database operations i get
the following errors
file is:ShowBedrock.java
import javax.servlet.*;
import javax.servlet.http.*;



public class ShowBedrock extends HttpServlet
{
public String getServletInfo()
{
return "Servlet connects to PostgreSQL database
and displays result of a SELECT";
}



private Connection dbcon; // Connection for scope
of ShowBedrock



// "init" sets up a database connection
public void init(ServletConfig config) throws
ServletException
{
String loginUser = "postgres";
String loginPasswd = "roopesh";
String loginUrl =
"jdbc:postgresql://localhost/bedrock";



// Load the PostgreSQL driver
try
{
Class.forName("org.postgresql.Driver");
dbcon =
DriverManager.getConnection(loginUrl, loginUser,
loginPasswd);
}
catch (ClassNotFoundException ex)
{

System.err.println("ClassNotFoundException: " +
ex.getMessage());
throw new ServletException("Class not
found Error");
}
catch (SQLException ex)
{
System.err.println("SQLException: " +
ex.getMessage());
}
}

//
Use http GET



public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
response.setContentType("text/html"); //
Response mime type



// Output stream to STDOUT
PrintWriter out = response.getWriter();




out.println("<HTML><Head><Title>Bedrock</Title></Head>");
out.println("<Body><H1>Bedrock</H1>");



try
{
// Declare our statement
Statement statement =
dbcon.createStatement();



String query = "SELECT name, dept, ";
query += " jobtitle ";
query += "FROM employeee ";



// Perform the query
ResultSet rs =
statement.executeQuery(query);



out.println("<table border>");



// Iterate through each row of rs
while (rs.next())
{
String m_name =
rs.getString("name");
String m_dept =
rs.getString("dept");
String m_jobtitle =
rs.getString("jobtitle");
out.println("<tr>" +
"<td>" + m_name +
"</td>" +
"<td>" + m_dept +
"</td>" +
"<td>" + m_jobtitle +
"</td>" +
"</tr>");
}



out.println("</table></body></html>");
statement.close();
}
catch(Exception ex)
{
out.println("<HTML>" +
"<Head><Title>" +
"Bedrock: Error" +
"</Title></Head>\n<Body>"
+
"<P>SQL error in doGet: "
+
ex.getMessage() +
"</P></Body></HTML>");
return;
}
out.close();
}
}
when i compile i donot get any errors and class file
is created
when i display it in webbrowser as
http://localhost:8080/examples/servlet/ShowBedrock
the result is as follows

Bedrock
SQL error in doGet: null

and i am working in linux
please can any one help me with this problem i would
like to know the solution very soon.please i have to
do my project regarding this .i have not yet started
the coding of my project.i am stuck up with this
configuration.
if the above steps what i have done is wrong please
tell me step by step how i have to do
please reply soon

________________________________________________________________________
Yahoo! India Matrimony: Find your life partner online
Go to: http://yahoo.shaadi.com/india-matrimony


From: Simon Moses <ks_moses(at)yahoo(dot)com>
To: java unix <javaunix123(at)yahoo(dot)co(dot)in>
Cc: pgsql jdbc <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: preoblem in jdbc postgresql and tomcat
Date: 2005-03-12 04:35:25
Message-ID: 20050312043525.6544.qmail@web14924.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-general pgsql-jdbc pgsql-novice

hi,

some corrections.

CLASSPATH

my preference of jars in CLASSPATH is
tools.jar:pg74.215.jdbc3.jar:others:.

see the code change in Class.forName and url.

try{

Class.forName("org.postgresql.Driver");
Connection con =
DriverManager.getConnection("jdbc:postgresql://localhost:5432/dbname","postgres","postgres");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select col1 from
test");

while(rs.next()){
out.println(rs.getString(1)+"<br>");

}
}catch(Exception e){
out.println(e);

}

if the above code works then you try same in jsp.

--Simon Moses.
Bangalore,
India.

--- java unix <javaunix123(at)yahoo(dot)co(dot)in> wrote:

> hi,
> i have installed postgresql-7.4.1,and
> tomcat4.1.31and
> j2sdk1.4.2_07
> for tomcat i have included path
> /usr/local/jakarta-tomcat-4.1.31
> for j2sdk path set is /usr/local/j2sdk1.4.2_07
> and CLASSPATH SET IS:
>
/usr/local/pgsql/pg73jdbc3.jar:/usr/local/pgsql/pg74.215.jdbc3.jar:/usr/local/pg
>
sql/postgresql-8.0-310.jdbc3.jar:/usr/local/j2sdk1.4.2_07/lib/tools.jar:/usr/loc
>
al/j2sdk1.4.2_07/jre/lib/rt.jar:/usr/local/jakarta-tomcat-4.1.31/common/lib/serv
>
let.jar:/usr/local/jakarta-tomcat-4.1.31/common/lib:/usr/local/pgsql:/usr/local/
> j2sdk1.4.2_07/jre/lib:/usr/local/j2sdk1.4.2_07/lib
> i have included all the paths
>
> all the above path are set in /etc/profile/
> and i set path for all three jar
>
files:/usr/local/pgsql/pg73jdbc3.jar:/usr/local/pgsql/pg74.215.jdbc3.jar:/usr/local/pg
> sql/postgresql-8.0-310.jdbc3.jar
>
> when i run this simple java program i get
> error as follows:
> [root(at)roopesh bin]# javac
> PostgreSQLTest.java//compile
> PostgreSQLTest.java: In class `PostgreSQLTest':
> PostgreSQLTest.java: In method
> `PostgreSQLTest.main(java.lang.String[])':
> PostgreSQLTest.java:7: Exception
> `java.lang.ClassNotFoundException' must be caught,
> or
> it must be declared in the `throws' clause of
> `main'.
>
> Class.forName("postgresql.Driver").newInstance();
> ^
> PostgreSQLTest.java:7: Exception
> `java.lang.InstantiationException' must be caught,
> or
> it must be declared in the `throws' clause of
> `main'.
>
> Class.forName("postgresql.Driver").newInstance();
> ^
> PostgreSQLTest.java:7: Exception
> `java.lang.IllegalAccessException' must be caught,
> or
> it must be declared in the `throws' clause of
> `main'.
>
> Class.forName("postgresql.Driver").newInstance();
>
> my PostgreSQLTest.java is as below
> import java.sql.*;
>
>
>
>
>
> class PostgreSQLTest {
> public static void main (String[] args) {
> try {
> Driver driver = (Driver)
>
> Class.forName("postgresql.Driver").newInstance();
> DriverManager.registerDriver(driver);
>
>
>
>
>
> String url = "jdbc:postgresql:javatest";
> Connection con =
> DriverManager.getConnection(url, "postgres", "");
> Statement stm = con.createStatement();
>
>
>
>
>
> stm.setQueryTimeout(10);
> ResultSet rs = stm.executeQuery("select col1
> from test");
>
>
>
>
>
> rs.next();
>
>
>
>
>
> System.out.println(rs.getString(1));
>
>
>
>
>
> } catch (SQLException e) {
>
>
>
>
>
> System.out.println("Exception!");
> System.out.println(e.toString());
> }
> }
> }
> This is one simple example
>
> Now when i tried to perform operations with tomcat
> simple sevlet works but with database operations i
> get
> the following errors
> file is:ShowBedrock.java
> import javax.servlet.*;
> import javax.servlet.http.*;
>
>
>
>
>
> public class ShowBedrock extends HttpServlet
> {
> public String getServletInfo()
> {
> return "Servlet connects to PostgreSQL
> database
> and displays result of a SELECT";
> }
>
>
>
>
>
> private Connection dbcon; // Connection for
> scope
> of ShowBedrock
>
>
>
>
>
> // "init" sets up a database connection
> public void init(ServletConfig config) throws
> ServletException
> {
> String loginUser = "postgres";
> String loginPasswd = "roopesh";
> String loginUrl =
> "jdbc:postgresql://localhost/bedrock";
>
>
>
>
>
> // Load the PostgreSQL driver
> try
> {
>
> Class.forName("org.postgresql.Driver");
> dbcon =
> DriverManager.getConnection(loginUrl, loginUser,
> loginPasswd);
> }
> catch (ClassNotFoundException ex)
> {
>
> System.err.println("ClassNotFoundException: " +
> ex.getMessage());
> throw new ServletException("Class not
> found Error");
> }
> catch (SQLException ex)
> {
> System.err.println("SQLException: " +
> ex.getMessage());
> }
> }
>
>
>
> //
> Use http GET
>
>
>
>
>
> public void doGet(HttpServletRequest request,
> HttpServletResponse response)
> throws IOException, ServletException
> {
> response.setContentType("text/html"); //
> Response mime type
>
>
>
>
>
=== message truncated ===

**************************
Visit My Home Page
http://www.geocities.com/ks_moses
updated: 28 Sep 2004.
Simon Moses
**************************


__________________________________
Do you Yahoo!?
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/


From: David Gagnon <dgagnon(at)siunik(dot)com>
To: java unix <javaunix123(at)yahoo(dot)co(dot)in>
Cc: pgsql-novice(at)postgresql(dot)org, pgsql-general(at)postgresql(dot)org, pgsql-jdbc(at)postgresql(dot)org
Subject: Re: preoblem in jdbc postgresql and tomcat
Date: 2005-03-14 14:13:27
Message-ID: 42359C07.70904@siunik.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-general pgsql-jdbc pgsql-novice

Hi,

I see 2 jdbc version in your classpath pg73jdbc3.jar and
pg74.215.jdbc3.jar.

For Tomcat you just have to drop the jdbc Jar file in

/usr/local/jakarta-tomcat-4.1.31/common/lib

No classpath to change.. Nothing.

After create an entry in Server.xml or create a Context.xml to define your datasource. See Tomcat Doc.

Works oki for me

/David

java unix wrote:

>hi,
>i have installed postgresql-7.4.1,and tomcat4.1.31and
>j2sdk1.4.2_07
>for tomcat i have included path
>/usr/local/jakarta-tomcat-4.1.31
>for j2sdk path set is /usr/local/j2sdk1.4.2_07
>and CLASSPATH SET IS:
>/usr/local/pgsql/pg73jdbc3.jar:/usr/local/pgsql/pg74.215.jdbc3.jar:/usr/local/pg
>sql/postgresql-8.0-310.jdbc3.jar:/usr/local/j2sdk1.4.2_07/lib/tools.jar:/usr/loc
>al/j2sdk1.4.2_07/jre/lib/rt.jar:/usr/local/jakarta-tomcat-4.1.31/common/lib/serv
>let.jar:/usr/local/jakarta-tomcat-4.1.31/common/lib:/usr/local/pgsql:/usr/local/
>j2sdk1.4.2_07/jre/lib:/usr/local/j2sdk1.4.2_07/lib
>i have included all the paths
>
>all the above path are set in /etc/profile/
>and i set path for all three jar
>files:/usr/local/pgsql/pg73jdbc3.jar:/usr/local/pgsql/pg74.215.jdbc3.jar:/usr/local/pg
>sql/postgresql-8.0-310.jdbc3.jar
>
>when i run this simple java program i get
>error as follows:
>[root(at)roopesh bin]# javac PostgreSQLTest.java//compile
>PostgreSQLTest.java: In class `PostgreSQLTest':
>PostgreSQLTest.java: In method
>`PostgreSQLTest.main(java.lang.String[])':
>PostgreSQLTest.java:7: Exception
>`java.lang.ClassNotFoundException' must be caught, or
>it must be declared in the `throws' clause of `main'.
>
>Class.forName("postgresql.Driver").newInstance();
> ^
>PostgreSQLTest.java:7: Exception
>`java.lang.InstantiationException' must be caught, or
>it must be declared in the `throws' clause of `main'.
>
>Class.forName("postgresql.Driver").newInstance();
> ^
>PostgreSQLTest.java:7: Exception
>`java.lang.IllegalAccessException' must be caught, or
>it must be declared in the `throws' clause of `main'.
>
>Class.forName("postgresql.Driver").newInstance();
>
>my PostgreSQLTest.java is as below
>import java.sql.*;
>
>
>
>class PostgreSQLTest {
> public static void main (String[] args) {
> try {
> Driver driver = (Driver)
>
>Class.forName("postgresql.Driver").newInstance();
> DriverManager.registerDriver(driver);
>
>
>
> String url = "jdbc:postgresql:javatest";
> Connection con =
>DriverManager.getConnection(url, "postgres", "");
> Statement stm = con.createStatement();
>
>
>
> stm.setQueryTimeout(10);
> ResultSet rs = stm.executeQuery("select col1
>from test");
>
>
>
> rs.next();
>
>
>
> System.out.println(rs.getString(1));
>
>
>
> } catch (SQLException e) {
>
>
>
> System.out.println("Exception!");
> System.out.println(e.toString());
> }
>}
>}
>This is one simple example
>
>Now when i tried to perform operations with tomcat
>simple sevlet works but with database operations i get
>the following errors
>file is:ShowBedrock.java
>import javax.servlet.*;
>import javax.servlet.http.*;
>
>
>
>public class ShowBedrock extends HttpServlet
>{
> public String getServletInfo()
> {
> return "Servlet connects to PostgreSQL database
>and displays result of a SELECT";
> }
>
>
>
> private Connection dbcon; // Connection for scope
>of ShowBedrock
>
>
>
> // "init" sets up a database connection
> public void init(ServletConfig config) throws
>ServletException
> {
> String loginUser = "postgres";
> String loginPasswd = "roopesh";
> String loginUrl =
>"jdbc:postgresql://localhost/bedrock";
>
>
>
> // Load the PostgreSQL driver
> try
> {
> Class.forName("org.postgresql.Driver");
> dbcon =
>DriverManager.getConnection(loginUrl, loginUser,
>loginPasswd);
> }
> catch (ClassNotFoundException ex)
> {
>
>System.err.println("ClassNotFoundException: " +
>ex.getMessage());
> throw new ServletException("Class not
>found Error");
> }
> catch (SQLException ex)
> {
> System.err.println("SQLException: " +
>ex.getMessage());
> }
>}
>
> //
>Use http GET
>
>
>
> public void doGet(HttpServletRequest request,
>HttpServletResponse response)
> throws IOException, ServletException
> {
> response.setContentType("text/html"); //
>Response mime type
>
>
>
> // Output stream to STDOUT
> PrintWriter out = response.getWriter();
>
>
>
>
>out.println("<HTML><Head><Title>Bedrock</Title></Head>");
> out.println("<Body><H1>Bedrock</H1>");
>
>
>
> try
> {
> // Declare our statement
> Statement statement =
>dbcon.createStatement();
>
>
>
> String query = "SELECT name, dept, ";
> query += " jobtitle ";
> query += "FROM employeee ";
>
>
>
> // Perform the query
> ResultSet rs =
>statement.executeQuery(query);
>
>
>
> out.println("<table border>");
>
>
>
> // Iterate through each row of rs
> while (rs.next())
> {
> String m_name =
>rs.getString("name");
> String m_dept =
>rs.getString("dept");
> String m_jobtitle =
>rs.getString("jobtitle");
> out.println("<tr>" +
> "<td>" + m_name +
>"</td>" +
> "<td>" + m_dept +
>"</td>" +
> "<td>" + m_jobtitle +
>"</td>" +
> "</tr>");
> }
>
>
>
> out.println("</table></body></html>");
> statement.close();
> }
> catch(Exception ex)
> {
> out.println("<HTML>" +
> "<Head><Title>" +
> "Bedrock: Error" +
> "</Title></Head>\n<Body>"
>+
> "<P>SQL error in doGet: "
>+
> ex.getMessage() +
>"</P></Body></HTML>");
> return;
> }
> out.close();
> }
>}
>when i compile i donot get any errors and class file
>is created
>when i display it in webbrowser as
>http://localhost:8080/examples/servlet/ShowBedrock
>the result is as follows
>
>Bedrock
>SQL error in doGet: null
>
>and i am working in linux
>please can any one help me with this problem i would
>like to know the solution very soon.please i have to
>do my project regarding this .i have not yet started
>the coding of my project.i am stuck up with this
>configuration.
>if the above steps what i have done is wrong please
>tell me step by step how i have to do
>please reply soon
>
>________________________________________________________________________
>Yahoo! India Matrimony: Find your life partner online
>Go to: http://yahoo.shaadi.com/india-matrimony
>
>---------------------------(end of broadcast)---------------------------
>TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
>
>
>