It seems you still have problem. You can google for the answer. One
thing I know is GlobalNamingResources should come inside the Server
element and not inside Context element.

rgds
Antony Paul


On Fri, 18 Feb 2005 22:47:06 -0800 (PST), U K Laxmi <[EMAIL PROTECTED]> wrote:
> I could able to get thro' JarperException. Thanks for
> replies.
> 
> Now facing new problem.
> 
> I'm getting "NameNotFoundException" -  Name jdbc is
> not bound in this Context
> 
> Environment what i'm using is: Apache 2, Tomcat 5.5,
> Netscape 7.2, MsAccess 2003 on windows 2000 machine.
> 
> I integrated tomcat and apache as apache doesn't
> support jsps. I wrote a JSP called test-db.jsp which
> in turn calls java program TestSQLLoad.java. This
> TestSQLLoad.java performs dattabase operation, fetches
> the data from table and that data is displayed on
> Netscape thro' jsp.
> 
> 1. test-db.jsp resides ina directory
> TOMCAT_HOME/webapps/web/JSP. Contents are as follows:
> 
> <%@ page contentType="text/html"
> import="testpkg.TestSQLLoad"%>
> 
>         <html>
>       <head>
>         <title>DB Test</title>
>       </head>
>       <body>
> 
>       <%
>         TestSQLLoad tst = new TestSQLLoad();
>         tst.init();
>       %>
> 
>       <h2>Results</h2>
>         User -> <%= tst.getUser() %><br/>
>         Pwd -> <%= tst.getPassword() %><br/>
>         Id -> <%= tst.getID() %>
> 
>       </body>
>     </html>
> 
> 2. TestSQLLoad.java is residing in following
> directory. TOMCAT_HOME/webapps/web/classes/testpkg
> direcotry. Contents of this file are as follows:
> 
>         package testpkg;
> 
>         import javax.naming.*;
>     import javax.sql.*;
>     import java.sql.*;
> 
>     public class TestSQLLoad
>     {
> 
>      String user = "Not Connected";
>      String pwd = "no pwd";
>      int id = -1;
> 
>      public void init() {
>       try{
>        Context ctx = new InitialContext();
>        if(ctx == null ) {
>         throw new Exception("Boom - No Context");
>        }
> 
>            Context envCtx = (Context)
> ctx.lookup("java:comp/env");
>        DataSource ds = (DataSource)
> envCtx.lookup("jdbc/db1");
> 
>        //DataSource ds =
> (DataSource)ctx.lookup("java:comp/env/jdbc/db1");
> 
>        if (ds != null) {
>         Connection conn = ds.getConnection();
> 
>         if(conn != null) {
>          user = "Got Connection "+conn.toString();
>          Statement stmt = conn.createStatement();
>          String q = "select name, password, id from
> user";
>          ResultSet rst = stmt.executeQuery(q);
>          if(rst.next()) {
>           user=rst.getString(1);
>           pwd=rst.getString(2);
>           id = rst.getInt(3);
>          }
>          conn.close();
>         }
>        }
>       }catch(Exception e) {
>        e.printStackTrace();
>       }
>      }
> 
>      public String getUser() {
>       return user;
>      }
> 
>      public String getPassword() {
>       return pwd;
>      }
> 
>      public int getID()
>      {
>       return id;
>      }
>     }
> 
> 3. I created a jar file using testpkg directory & put
> it in TOMCAT_HOME/common/lib as well as
> TOMCAT_HOME/webapps/web/WEB-INF/lib directory.
> 
> 4. I created MsAccess database called db1.mdb and put
> it in TOMCAT_HOME/WEBAPPS/WEB/db1 directory. I created
> a table called user with fields name, password and ID.
> ID is the primary key.
> 
> 5. I included following in the server.xml of
> TOMCAT_HOME/conf directory.
> 
> <Context path="/db1" docBase="C:/tomcat/webapps/db1"
>             debug="5" reloadable="true"
> crossContext="true">
> 
> <GlobalNamingResources>
>   <Resource name="jdbc/db1" auth="Container"
>     type="javax.sql.DataSource"
> 
> factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
>     driverClassName="sun.jdbc.odbc.JdbcOdbcDrive"
>     url="jdbc:odbc://localhost/db1"
>         maxActive="20" maxIdle="10" maxWait="-1" />
>         </GlobalNamingResources>
> </Context>
> 
> 6. I included following in context.xml of
> TOMCAT_HOME/conf directory.
> 
> <ResourceLink global="jdbc/db1" name="jdbc/db1"
> type="javax.sql.DataSource"/>
> 
> 7. I included following in web.xml of
> TOMCAT_HOME/webapps/web/WEB-INF directory.
> 
>    <resource-ref>
>         <res-ref-name>jdbc/db1</res-ref-name>
>         <res-type>javax.sql.DataSource</res-type>
>         <res-auth>Container</res-auth>
>     </resource-ref>
> 
> 8. I copied commons-collections-2.1.1.jar,
> commons-dbcp-1.2.1.jar and commons-pool-1.2.jar into
> TOMCAT_HOME/common/lib directory.
> 
> 9. I started apache, tomcat and then opened a browser
> and typed http://localhost/web/JSP/test-db.jsp.
> 
> 10. I get following on the browser.
> 
> "Results
> User -> Not Connected
> Pwd -> no pwd
> Id -> -1"
> 
> 11. On the tomcat window where tomcat is running i'm
> getting following error.
> 
> javax.naming.NameNotFoundException: Name jdbc is not
> bound in this Context
>         at
> org.apache.naming.NamingContext.lookup(NamingContext.java:769)
>         at
> org.apache.naming.NamingContext.lookup(NamingContext.java:152)
>         at
> org.apache.naming.factory.ResourceLinkFactory.getObjectInstance(Resou
> rceLinkFactory.java:96)
>         at
> javax.naming.spi.NamingManager.getObjectInstance(Unknown
> Source)
>         at
> org.apache.naming.NamingContext.lookup(NamingContext.java:792)
>         at
> org.apache.naming.NamingContext.lookup(NamingContext.java:139)
>         at
> org.apache.naming.NamingContext.lookup(NamingContext.java:780)
>         at
> org.apache.naming.NamingContext.lookup(NamingContext.java:152)
>         at
> testpkg.TestSQLLoad.init(TestSQLLoad.java:22)
>         at
> org.apache.jsp.JSP.test_002ddb_jsp._jspService(org.apache.jsp.JSP.tes
> t_002ddb_jsp:54)
>         at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
>         at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>         at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
> .java:325)
>         at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:2
> 95)
>         at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
>         at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:252)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:173)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
> alve.java:214)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
> alve.java:178)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
> ava:126)
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
> ava:105)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
> ve.java:107)
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
> a:148)
>         at
> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:306)
> 
>         at
> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385)
>         at
> org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:745)
>         at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
> va:675)
>         at
> org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:868)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
> ool.java:684)
>         at java.lang.Thread.run(Unknown Source)
> 
> 11. Actually if i see the source code of TestSQLLoad
> it's throwing error on line 22 where it's trying to
> get  datasource.
> 
> I've rpovided all the information that i can. Please
> help to solve my problem and connect to database thro'
> jsp successfully. Any help in this regard is highly
> appreciated.
> 
> Thanks in advance.
> 
> __________________________________
> Do you Yahoo!?
> The all-new My Yahoo! - What will yours do?
> http://my.yahoo.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]

Reply via email to