Hola,
Can you use Context#listBindings, iterate through that enumeration, and
print out what bindings you do have in your naming context?

Yoav Shapira
Millennium Research Informatics


>-----Original Message-----
>From: Shilpa Nalgonda [mailto:[EMAIL PROTECTED]
>Sent: Tuesday, July 27, 2004 11:36 AM
>To: Tomcat Users List
>Subject: RE: Tomcat Datasource -- please help..
>
>As you have said i am getting "jdbc not bound" exception only.  But at
one
>point i changed the env lookup to point to "prototypedb" instead of
>"jdbc/prototypedb".. so thats when i get prototypedb not bound error...
>
>Anyway do you think that i have put the context to the jndi resource in
the
>wrong place in server.xml..
>where exactly should i add this in server.xml.
>
>if i add datasource using admin tool the jndi parameter gets added in
>GlobalNamingResouce.
>which is correct way...
>
>-----Original Message-----
>From: Ruth, Brice [mailto:[EMAIL PROTECTED]
>Sent: Tuesday, July 27, 2004 11:29 AM
>To: Tomcat Users List
>Subject: Re: Tomcat Datasource -- please help..
>
>
>I believe that should work. I'm out of ideas ... it seems strange that
>the Exception you're getting is complaining about "prototypedb" not
>being bound, instead of "jdbc" not being bound ... usually that comes
>first. That's the only thing that sticks out to me, but I don't really
>know what to make of it!
>
>Shilpa Nalgonda wrote:
>
>>Below is the code i am using to get the connection,
>>and datasource...
>>                      Context ctx = new InitialContext();
>>                      Context env =
(Context)ctx.lookup("java:comp/env");
>>                      DataSource ds = (DataSource)
>env.lookup("jdbc/prototypedb");
>>                      conn = ds.getConnection();
>>
>>-----Original Message-----
>>From: Ruth, Brice [mailto:[EMAIL PROTECTED]
>>Sent: Tuesday, July 27, 2004 11:07 AM
>>To: Tomcat Users List
>>Subject: Re: Tomcat Datasource -- please help..
>>
>>
>>I believe if you're defining your DataSource in the <Context>
directly,
>>not in the Global Naming Resources, then you do not need the
>><resource-ref> in web.xml, nor the <ResourceLink> mentioned below.
>>
>>What code are you using to get to your connection? The JNDI lookup
>>should be to java:comp/env/jdbc/prototypedb, in your particular case.
>>
>>Respectfully,
>>Brice Ruth
>>
>>Shilpa Nalgonda wrote:
>>
>>
>>
>>>I have defined the resource in web.xml as below... and also defined
the
>>>datasouce resources under context in server.xml... even then it does
not
>>>help.. I get the same error "org.apache.jasper.JasperException: Name
>>>prototypedb is not bound in this Context"
>>>Web.xml
>>>================================================
>>><web-app>
>>><description>PrototypeDB Test App</description>
>>><resource-ref>
>>><description>DB Connection</description>
>>><res-ref-name>jdbc/prototypedb</res-ref-name>
>>><res-type>javax.sql.DataSource</res-type>
>>><res-auth>Container</res-auth>
>>></resource-ref>
>>></web-app>
>>>=======================================================
>>>server.xml
>>>==========
>>><!-- JNDI datasource setup to connect to MYSQL database-->
>>>     <Context path="/PrototypeDBTest" docBase="PrototypeDBTest"
>>>             debug="5" reloadable="true" crossContext="true"
>>>useNaming="true">
>>>
>>>     <Logger className="org.apache.catalina.logger.FileLogger"
>>>            prefix="localhost_PrototypeDBTest_log." suffix=".txt"
>>>            timestamp="true"/>
>>>            <Resource name="jdbc/prototypedb"
>>>              auth="Container"
>>>              type="javax.sql.DataSource"/>
>>>
>>>     <ResourceParams name="jdbc/prototypedb">
>>>     <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 0 for no limit.
>>>        -->
>>>       <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>antonio</value>
>>>     </parameter>
>>>     <parameter>
>>>       <name>password</name>
>>>       <value>play</value>
>>>     </parameter>
>>>
>>>     <!-- Class name for mm.mysql JDBC driver -->
>>>     <parameter>
>>>               <name>driverClassName</name>
>>>               <value>org.gjt.mm.mysql.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/prototypedb?autoReconnect=true</va
lue
>>>
>>>
>>>     </parameter>
>>></ResourceParams>
>>></Context>
>>>
>>>=====================================================================
===
>>>=========
>>>
>>>-----Original Message-----
>>>From: Ruth, Brice [mailto:[EMAIL PROTECTED]
>>>Sent: Tuesday, July 27, 2004 10:04 AM
>>>To: Tomcat Users List
>>>Subject: Re: Tomcat Datasource
>>>
>>>In addition to defining the DataSource in Tomcat's admin tool, you'll
>>>need to define the Resource in you web.xml - something like this:
>>>
>>>   <resource-ref>
>>>       <!-- optional -->
>>>       <description>
>>>           Resource reference to a factory for java.sql.Connection
>>>           instances that may be used for talking to a particular
>>>           database that is configured in the server.xml file.
>>>       </description>
>>>       <!-- local JNDI name to use in JSPs, servlets, etc. -->
>>>       <res-ref-name>
>>>           jdbc/phone
>>>       </res-ref-name>
>>>       <res-type>
>>>           javax.sql.DataSource
>>>       </res-type>
>>>       <res-auth>
>>>           Container
>>>       </res-auth>
>>>   </resource-ref>
>>>
>>>You'll also need to define a ResourceLink in your Context, that links
>>>what you want to call your DataSource locally (used in web.xml, see
>>>above) to what you called your DataSource in the admin tool (globally
>>>... these can be the same, but don't have to be). Something like
this:
>>>
>>> <ResourceLink global="jdbc/phone" name="jdbc/phone"
>>>type="javax.sql.DataSource"/>
>>>
>>>The 'global' attribute provides the name of the global JNDI resource
>>>(what was defined in the admin tool); 'name' provides the name of the
>>>local JNDI resource (what will be referenced in web.xml).
>>>
>>>That's it! You shouldn't have any problems once you've done this.
>>>
>>>Respectfully,
>>>Brice Ruth
>>>
>>>
>>>
>>>Bussie, Andre D wrote:
>>>
>>>
>>>
>>>
>>>
>>>>I'm using Tomcat 5.0.19. I configured a datasource via the Tomcat
Admin
>>>>tool to configure a datatsource listed below is the server.xml file
>>>>settings for the datasource
>>>>
>>>><GlobalNamingResources>
>>>>
>>>>  <Resource name="jdbc/phone" auth="Container"
>>>>type="javax.sql.DataSource" description="Database for the phone
>>>>application" />
>>>>
>>>>  <ResourceParams name="jdbc/phone">
>>>>
>>>>          <parameter>
>>>>
>>>>          <name>maxWait</name>
>>>>
>>>>          <value>5000</value>
>>>>
>>>>          </parameter>
>>>>
>>>>          <parameter>
>>>>
>>>>          <name>maxActive</name>
>>>>
>>>>          <value>4</value>
>>>>
>>>>          </parameter>
>>>>
>>>>          <parameter>
>>>>
>>>>          <name>password</name>
>>>>
>>>>          <value></value>
>>>>
>>>>          </parameter>
>>>>
>>>>          <parameter>
>>>>
>>>>          <name>url</name>
>>>>
>>>>          <value>jdbc:hsqldb.hsql://localhost</value>
>>>>
>>>>          </parameter>
>>>>
>>>>          <parameter>
>>>>
>>>>          <name>driverClassName</name>
>>>>
>>>>          <value>org.hsqldb.jdbcDriver</value>
>>>>
>>>>          </parameter>
>>>>
>>>>          <parameter>
>>>>
>>>>          <name>maxIdle</name>
>>>>
>>>>          <value>2</value>
>>>>
>>>>          </parameter>
>>>>
>>>>          <parameter>
>>>>
>>>>          <name>username</name>
>>>>
>>>>          <value>sa</value>
>>>>
>>>>          </parameter>
>>>>
>>>>  </ResourceParams>
>>>>
>>>></GlobalNamingResources>
>>>>
>>>>
>>>>
>>>>However when I try to access the datasource from a jsp file I get
the
>>>>following error
>>>>
>>>>2004-07-26 10:42:19 StandardWrapperValve[jsp]: Servlet.service() for
>>>>servlet jsp threw exception
>>>>
>>>>javax.naming.NameNotFoundException: Name jdbc/phone is not bound in
>>>>
>>>>
>>>>
>>>>
>>>this
>>>
>>>
>>>
>>>
>>>>Context
>>>>
>>>>
>>>>
>>>>Code snippet listed below
>>>>
>>>><% InitialContext ctx = new InitialContext();
>>>>
>>>>    DataSource ds =
>>>>(DataSource)ctx.lookup("java:comp/env/jdbc/phone");
>>>>
>>>>    Connection conn = ds.getConnection();
>>>>
>>>>    try{
>>>>
>>>>
>>>>
>>>>Any suggestions on what can be causing this error. Why isn't in the
>>>>context and how do I bind it to the context?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>
>--
>Brice Ruth, Sr. IT Analyst
>Fiskars Brands Inc
>http://www.fiskarsbrands.com/
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]




This e-mail, including any attachments, is a confidential business communication, and 
may contain information that is confidential, proprietary and/or privileged.  This 
e-mail is intended only for the individual(s) to whom it is addressed, and may not be 
saved, copied, printed, disclosed or used by anyone else.  If you are not the(an) 
intended recipient, please immediately delete this e-mail from your computer system 
and notify the sender.  Thank you.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to