tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Amila Suriarachchi" <amilasuriarach...@gmail.com>
Subject Re: PostgreSQL access via JNDI
Date Wed, 05 Apr 2006 03:49:43 GMT
On 4/5/06, Mark Slater <lists@humanesoftware.com> wrote:
> >
> > I've been trying to get PostgreSQL set up to be accessed through JNDI
> > in Tomcat 5.5.x. I found the docs page describing it, "jndi-
> > datasource-examples-howto.html", and followed the example there, but
> > it still doesn't work. I'm trying to provide access to PostgreSQL for
> > use by both JDO and JCR in my web-apps.
> >
> > Here's the Resource definition I'm using:
> >
> >      <Resource name="jdbc/whisper_db"
> >          auth="Container"
> >          type="javax.sql.Datasource "
>
>
S should be capital  as well  DataSource

         driverClassName="org.postgresql.Driver"
> >          url="jdbc:postgresql://127.0.0.1:5432/my_db"
>
>
> this is a postgres problem rather than tomcat problem.
> try here jdbc:postgresql://localhost:5432/my_db (or template1)
>
> if you want to access the database giving 127.0.0.1 you have to put
> an entry in pg_hda.conf file.
>
>
>
>          username="-------------------"
> >          password="-------------------""
> >          maxActive="10"
> >          maxIdle="100"
> >          maxWait="3000" />
> >
> >
> > In my application's META-INF/context.xml, I have the following
> > ResourceLink:
> >
> >      <ResourceLink
> >          global="jdbc/whisper_db" name="jdbc/whisper_orm"
> > type="javax.sql.Datasource " />
> >
> > In my application's WEB-INF/web.xml, I have the following resource-
> > env-ref:
> >
> >      <resource-env-ref>
> >          <description>Whisper's Database</description>
> >          <resource-env-ref-name>jdbc/whisper_orm</resource-env-ref-name>
> >
> >          <resource-env-ref-type>javax.sql.Datasource</resource-env-
> > ref-type>
> >      </resource-env-ref>
> >
> >
> > Depending on where I put the Resource definition, I get different
> > errors.
> >
> > If I put it in the web-app's META-INF/context.xml, or in $TOMCAT_HOME/
> > conf/context.xml, my JDO implementation complains:
> >      NestableRuntimeException: There was an error duing JNDI lookup
> > of the name "java:comp/env/jdbc/whisper_orm".
> >      ....
> >      Caused by: javax.naming.NameNotFoundException: Name jdbc is not
> > bound in this Context
> >
> > If I put it in $TOMCAT_HOME/conf/server.xml, in the
> > GlobalNamingResources section, I get:
> >
> > 2006-04-04 11:58:27,866 ERROR
> > [org.apache.catalina.mbeans.GlobalResourcesLifecycleListener] -
> > <Exception processing Global JNDI Resources>
> > javax.naming.NamingException: Cannot create resource instance
> >          at
> > org.apache.naming.factory.ResourceFactory.getObjectInstance
> > (ResourceFactory.java:132)
> >          at javax.naming.spi.NamingManager.getObjectInstance
> > (NamingManager.java:304)
> >          at org.apache.naming.NamingContext.lookup(NamingContext.java:
> > 792)
> >          at org.apache.naming.NamingContext.lookup (NamingContext.java:
> > 152)
> >          at
> > org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans
> > (GlobalResourcesLifecycleListener.java:138)
> >          at
> > org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans
> > (GlobalResourcesLifecycleListener.java:143)
> >          at
> > org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans
> > (GlobalResourcesLifecycleListener.java:108)
> >          at
> > org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEve
> > nt(GlobalResourcesLifecycleListener.java:80)
> >          at
> > org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent
> > (LifecycleSupport.java:119)
> >          at org.apache.catalina.core.StandardServer.start
> > (StandardServer.java:693)
> >          at org.apache.catalina.startup.Catalina.start(Catalina.java:
> > 551)
> >          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >          at sun.reflect.NativeMethodAccessorImpl.invoke
> > (NativeMethodAccessorImpl.java:39)
> >          at sun.reflect.DelegatingMethodAccessorImpl.invoke
> > (DelegatingMethodAccessorImpl.java:25)
> >          at java.lang.reflect.Method.invoke(Method.java:585)
> >          at org.apache.catalina.startup.Bootstrap.start
> > (Bootstrap.java:275)
> >          at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:
> > 413)
> >
> > I'm assuming these errors are related, and that whatever is causing
> > the NamingException is the same fundamental problem causing the
> > NameNotFoundException in the context-based configuration. My problem
> > is that I can't figure out what it is. The driver for the database
> > (postgresql-8.1-405.jdbc3.jar ) is in $TOMCAT_HOME/common/lib/, and
> > I've also tried adding commons-dbcp-1.2.1.jar and commons-
> > pool-1.2.jar alongside it (even though the docs say that shouldn't be
> > necessary), but get the same errors.
> >
> > Is there any logging that I can turn on that will tell me the WHY
> > Tomcat "Cannot create resource instance"? Or am I doing something
> > obviously stupid with my Resource definition? Or could it be
> > something else entirely?
> >
> > Any suggestions would be really helpful.
> >
> > Thanks!
> >
> > Mark
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message