Hi I've just started to write servlets. Servlets that only do processing, without connecting to database work fine, but I have some problems to get the connection with postgresql via jdbc work.
Tomcat: 4.0.4 (on linux) Postgresql: 7.2.1 (on linux) Jdbc: pgjdbc2.jar (from jdbc.postgresql.org) The servlet is quite simple: import java.io.*; import java.util.*; import java.sql.*; import javax.sql.*; import javax.naming.*; import javax.servlet.*; import javax.servlet.http.*; public class InfoServlet extends HttpServlet { Connection con; private boolean conFree = true; public void init() throws ServletException { try { Context initCtx = new InitialContext(); Context envCtx = (Context)initCtx.lookup("java:comp/env"); DataSource ds = (DataSource) envCtx.lookup("jdbc/BookDB"); Connection con = ds.getConnection(); } catch (Exception ex) { throw new ServletException("Couldn't open connection to database: " + ex.getMessage()); } } public void destroy() { try { con.close(); } catch (SQLException ex) { System.out.println(ex.getMessage()); } } public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); // set content-type header before accessing the Writer response.setContentType("text/html"); response.setBufferSize(8192); PrintWriter out = response.getWriter(); // then write the data of the response out.println("<html>" + "<head><title>Duke's Bookstore</title></head>"); } } in web/WEB-INF/web.xml I defined: <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-name>Currency Converter Application</display-name> <description> Test servlet </description> <servlet> <servlet-name>info</servlet-name> <display-name>info</display-name> <description>no description</description> <servlet-class>InfoServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>info</servlet-name> <url-pattern>/info</url-pattern> </servlet-mapping> <session-config> <session-timeout>30</session-timeout> </session-config> <resource-ref> <res-ref-name>jdbc/BookDB</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Containter</res-auth> </resource-ref> </web-app> And in server.xml in the contex of the application: <Context path="/bookstore" docBase="bookstore" debug="0" reloadable="true" crossContext="true"> <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_bookstore_log." suffix=".txt" timestamp="true"/> <Resource name="jdbc/BookDB" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="jdbc/BookDB"> <parameter> <name>user</name> <value>java</value> </parameter> <parameter> <name>password</name> <value>java</value> </parameter> <parameter> <name>driverClassName</name> <value>org.postgresql.Driver</value> </parameter> <parameter> <name>driverName</name> <value>jdbc:postgresql:public</value> </parameter> </ResourceParams> </Context> I've tried a few different driverName parameters: (restarting Tomcat after each change) jdbc:postgresql://localhost/public jdbc:postgresql://full.server.name/public jdbc:postgresql:public jdbc:postgresql://localhost/ But, despite the parameters, I always get the following error: exception javax.servlet.ServletException: Couldn't open connection to database: Exception creating DataSource: org.hsql.jdbcDriver at InfoServlet.init(Unknown Source) at javax.servlet.GenericServlet.init(GenericServlet.java:258) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:918) .... {cut} I have no idea why Tomcat wants to connect using hsql driver. I grepped through tomcat directory and found only one reference to this driver (in examples section). I removed event the sample section, restarted Tomcat but it didn't help. Does anyone know what is wrong? regards Przem -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>