tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Angel Cervera Claudio <an...@acervera.com>
Subject Re: Name jdbc is not bound in this Context
Date Thu, 09 Sep 2004 13:59:18 GMT
I'm using Tomcat 5.0.28

El jue, 09-09-2004 a las 15:56, Angel Cervera Claudio escribió:
> Idem error to me, but with realm using DataSource:
> problem is that DataSourceRealm can not find JNDI name in context.
> There are a bug in tomcat 4.1, but this was resolved.
> My xml in Catalina/localhost content:
> <?xml version='1.0' encoding='utf-8'?> 
> <Context displayName="Gestion de cunetas." docBase="/home/angel/workspace/yeguadas/tmp/web"
path="/yeguadas" useNaming="false">
>   <Realm className="org.apache.catalina.realm.DataSourceRealm" dataSourceName="jdbc/YeguadasDB"
roleNameCol="NOMBRE" userCredCol="PASSWORD" userNameCol="NOMBRELOGIN" userRoleTable="USUARIO_PERFILES"
userTable="USUARIO"/>
> 
>   <Resource auth="Container" name="jdbc/YeguadasDB" type="javax.sql.DataSource"/>
>   <ResourceParams name="jdbc/YeguadasDB">
>     <parameter>
>       <name>url</name>
>       <value>jdbc:mysql://localhost:3306/yeguadas?autoReconnect=true</value>
>     </parameter>
>     <parameter>
>       <name>validationQuery</name>
>       <value>select count(*) from usuario;</value>
>     </parameter>
>     <parameter>
>       <name>maxIdle</name>
>       <value>30</value>
>     </parameter>
>     <parameter>
>       <name>maxActive</name>
>       <value>100</value>
>     </parameter>
>     <parameter>
>       <name>driverClassName</name>
>       <value>org.gjt.mm.mysql.Driver</value>
>     </parameter>
>     <parameter>
>       <name>maxWait</name>
>       <value>10000</value>
>     </parameter>
>     <parameter>
>       <name>username</name>
>       <value>ijdshkhds</value>
>     </parameter>
>     <parameter>
>       <name>factory</name>
>       <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
>     </parameter>
>     <parameter>
>       <name>password</name>
>       <value>fdfdferfr</value>
>     </parameter>
>   </ResourceParams>
> </Context>
> This is the exception when user try login: 
> 2004-09-09 15:43:46 DataSourceRealm[/yeguadas]: Excepción realizando autenticación
> javax.naming.NameNotFoundException: El nombre jdbc no este asociado a este contexto
>         at org.apache.naming.NamingContext.lookup(NamingContext.java:768)
>         at org.apache.naming.NamingContext.lookup(NamingContext.java:151)
>         at org.apache.catalina.realm.DataSourceRealm.open(DataSourceRealm.java:437)
>         at org.apache.catalina.realm.DataSourceRealm.authenticate(DataSourceRealm.java:277)
>         at org.apache.catalina.authenticator.BasicAuthenticator.authenticate(BasicAuthenticator.java:129)
>         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
>         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>         at java.lang.Thread.run(Thread.java:534)
> 
> 
> 
> 
> El jue, 09-09-2004 a las 15:28, Kelly C. Goedert escribió:
> > Hi,
> > 
> > I'm getting this error " Name jdbc is not bound in this Context" on my 
> > application. My tomcat version is 5.0.27.
> > 
> > The servlet that is causing this error is trying to access a database 
> > with the following code:
> > 
> > protected IDatabaseConnection getConnection() throws Exception {
> >       
> >         Context ic = new InitialContext();
> >         Context ctx = (Context) ic.lookup("java:comp/env");
> >         DataSource ds = (DataSource) ic.lookup("jdbc/boxes-cactus");
> >        
> >         con = new DatabaseDataSourceConnection( ds);
> >        
> >         return con;
> > 
> >     }
> > 
> > My web.xml has the following configuration to the datasource:
> > 
> > <resource-ref>
> >       <description>DB Connection</description>
> >       <res-ref-name>jdbc/boxes-cactus</res-ref-name>
> >       <res-type>javax.sql.DataSource</res-type>
> >       <res-auth>Container</res-auth>
> >   </resource-ref>
> > 
> > And in $TOMCAT_HOME/conf/
> > Catalina/localhost/boxes-cactus.xml I got this
> > 
> > Context path="/boxes-cactus" docBase="boxes-cactus"
> >         debug="5" reloadable="true" crossContext="true">
> > 
> >    
> >   <Logger className="org.apache.catalina.logger.FileLogger"
> >              prefix="localhost_DBTest_log." suffix=".txt"
> >              timestamp="true"/>
> > 
> >   <Resource name="jdbc/boxes-cactus"
> >                auth="Container"
> >                type="javax.sql.DataSource"/>
> > 
> >   <ResourceParams name="jdbc/boxes-cactus">
> >     <parameter>
> >       <name>factory</name>
> >       <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
> >     </parameter>
> > 
> >     <!-- Maximum number of dB connections in pool. Make sure you
> >          configure your mysqld max_connections large enough to handle
> >          all of your db connections. Set to 0 for no limit.
> >          -->
> >     <parameter>
> >       <name>maxActive</name>
> >       <value>100</value>
> >     </parameter>
> > 
> >     <!-- Maximum number of idle dB connections to retain in pool.
> >          Set to -1 for no limit.  See also the DBCP documentation on this
> >          and the minEvictableIdleTimeMillis configuration parameter.
> >          -->
> >     <parameter>
> >       <name>maxIdle</name>
> >       <value>30</value>
> >     </parameter>
> > 
> >     <!-- Maximum time to wait for a dB connection to become available
> >          in ms, in this example 10 seconds. An Exception is thrown if
> >          this timeout is exceeded.  Set to -1 to wait indefinitely.
> >          -->
> >     <parameter>
> >       <name>maxWait</name>
> >       <value>10000</value>
> >     </parameter>
> > 
> >     <!-- MySQL dB username and password for dB connections  -->
> >     <parameter>
> >      <name>username</name>
> >      <value>root</value>
> >     </parameter>
> >     <parameter>
> >      <name>password</name>
> >      <value>xxxxx</value>
> >     </parameter>
> > 
> >     <!-- Class name for the old mm.mysql JDBC driver - uncomment this 
> > entry and comment next
> >          if you want to use this driver - we recommend using Connector/J 
> > though
> >     <parameter>
> >        <name>driverClassName</name>
> >        <value>org.gjt.mm.mysql.Driver</value>
> >     </parameter>
> >      -->
> >    
> >     <!-- Class name for the official MySQL Connector/J driver -->
> >     <parameter>
> >        <name>driverClassName</name>
> >        <value>com.mysql.jdbc.Driver</value>
> >     </parameter>
> >    
> >     <!-- The JDBC connection url for connecting to your MySQL dB.
> >          The autoReconnect=true argument to the url makes sure that the
> >          mm.mysql JDBC Driver will automatically reconnect if mysqld 
> > closed the
> >          connection.  mysqld by default closes idle connections after 8 
> > hours.
> >          -->
> >     <parameter>
> >       <name>url</name>
> >       <value>jdbc:mysql://localhost:3306/BOXES?autoReconnect=true</value>
> >     </parameter>
> >   </ResourceParams>
> > </Context>
> > 
> > 
> > Can anyone help?
> > 
> > Kelly.
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
> 
> ________________________________________________________________________
> Angel Cervera Claudio
> Telf. +34 670819234
> Mail: angel@acervera.com
> Web: http://www.acervera.com
> Msn Messenger: angelcervera@hispavista.com
> Yahoo Messenger: angelcervera
> AOL Messenger: angelcervera
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-user-help@jakarta.apache.org

________________________________________________________________________
Angel Cervera Claudio
Telf. +34 670819234
Mail: angel@acervera.com
Web: http://www.acervera.com
Msn Messenger: angelcervera@hispavista.com
Yahoo Messenger: angelcervera
AOL Messenger: angelcervera


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Mime
View raw message