Re: Tomcat7 connection pool with postgresql

Поиск
Список
Период
Сортировка
От Bruce Adams
Тема Re: Tomcat7 connection pool with postgresql
Дата
Msg-id 4EC66DEC.70200@acm.org
обсуждение исходный текст
Ответ на Tomcat7 connection pool with postgresql  (Achilleas Mantzios <achill@matrix.gatewaynet.com>)
Список pgsql-jdbc
Achilleas -

You need to put something in Tomcat's context.xml. Usually, the Resource
goes in context.xml, not in server.xml. Can you try simply moving your
existing Resource from server.xml to context.xml?

If you really need to put the Resource in server.xml, I think you also
need a ResourceLink in context.xml to make it available to web applications.

- Bruce

On 11/18/2011 04:09 AM, Achilleas Mantzios wrote:
> Hello,
> although i have been a jboss/postgresql admin/dba for ages, it seems that i am stuck with tomcat.
> i am trying in tomcat7 to set a connection pool'ed data source with postgresql.
> i was following the tomcat7 docs here :
> http://tomcat.apache.org/tomcat-7.0-doc/jndi-datasource-examples-howto.html#PostgreSQL
>
> My server.xml portion looks as follows :
> <GlobalNamingResources>
> ...
> <Resource auth="Container" description="pgsql database for spring in action sia"
> driverClassName="org.postgresql.Driver"
> maxActive="20" maxIdle="10" maxWait="-1"
> name="jdbc/postgres"
> username="springuser" password="springuser"
> type="javax.sql.DataSource"
> url="jdbc:postgresql://localhost/sia"/>
> </GlobalNamingResources>
>
> my app's web.xml resource-ref goes as follows :
> <resource-ref>
>          <description>postgreSQL Datasource sia</description>
>          <res-ref-name>jdbc/postgres</res-ref-name>
>          <res-type>javax.sql.DataSource</res-type>
>          <res-auth>Container</res-auth>
>    </resource-ref>
>
> in my .jsp this code fails  (ommiting boilerplate)
>
>     InitialContext ic = new InitialContext();
>          DataSource ds = (DataSource) ic.lookup( "java:/comp/env/jdbc/postgres" );
>          Connection con=null;
>     try {
>         con = ds.getConnection();
>                  con.setAutoCommit(true);
>     }
>     catch () {...}
>     finally {...}
>
> with :
>
> org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
>          org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1452)
>          org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371)
>          org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
>          org.apache.jsp.index_jsp._jspService(index_jsp.java:102)
>          org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>          javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>          org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:433)
>          org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
>          org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333)
>          javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>
>     root cause
> java.sql.SQLException: No suitable driver
>          java.sql.DriverManager.getDriver(DriverManager.java:279)
>          org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437)
>          org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371)
>          org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
>          org.apache.jsp.index_jsp._jspService(index_jsp.java:102)
>
> ....
>
> However if i do the classic standalone classloading :
>         Class.forName("org.postgresql.Driver");
>                  String url = "jdbc:postgresql://localhost/sia?user=springuser&password=springuser";
>                  con = DriverManager.getConnection(url);
> it works ok.
>
> To be honest, i haven't done any extensive reading on those matters, besides the official tomcat docs,
> but time constraints are far too restrictive. Thank you all for your time!
>
> PS users from the tomcat list, pls include my address since i am not subscribed in your list.
>

В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Oliver Jowett
Дата:
Сообщение: Re: PostgreSQL protocol 3 JDBC drivers, sub-protocols, and latency
Следующее
От: Stevo Slavić
Дата:
Сообщение: Re: PostgreSQL protocol 3 JDBC drivers, sub-protocols, and latency