Ok, I'll bite.

what's the code in "...."  ?

by chance, do you have something like:
con= null; ?
 
You should also clean up that first try block. Remove the if/else block
that esentially will *always* report the connection as being null (since
you haven't assigned it up to that point).




> -----Original Message-----
> From: Arora, Avinash [mailto:[EMAIL PROTECTED] 
> Sent: Tuesday, May 04, 2004 2:52 PM
> To: Daxin Zuo; Tomcat Users List
> Cc: [EMAIL PROTECTED]
> Subject: RE: DB connection pool problem
> 
> 
> Hi friends,
>           Thanks for your previous feedback. After adding several
> logging statements in my code, I have found that connection object is
> null. But dataSource object is not null. What can be reason for it??
> Here is how I use it in my code--
>       public LinkedList testFunction(){
>         LinkedList ll = null; 
>         Connection con = null;
>         Statement stmt = null;
>         ResultSet rs = null;
>         DataSource dataSource = null;
>         try{
>             Context init = new InitialContext();
>             Context ctx = (Context) init.lookup("java:comp/env");
>             dataSource = (DataSource)ctx.lookup("jdbc/conversion");
>             ll.add("dataSource object is");
>             ll.add(dataSource);
>        }
>         
>         catch(NamingException e){
>             System.out.println("Exception thrown is"+e.getMessage());
>             ll.add("Naming Exception thrown");
>         } 
>         finally{
>             if(dataSource == null){
> 
>                     ll.add("DataSource object is null");
>                     return ll;
>                 }
>             else{
>                 ll.add("Data source object is not null");
>                // return ll;
>                 }
>             }
>         try{
>             // load the driver class file
>             //Class.forName("com.mysql.jdbc.Driver").newInstance();
>             //establishing the connection
>             if(con == null){
>                 ll.add("Inside 1st try. Connection object found to be
> null");
>             }
>             else{
>                 ll.add("Inside 1st try. Connection object is 
> not nul");
>             
>             con  = dataSource.getConnection(); 
>             
>             stmt = con.createStatement();
>               ....
>       }
>       finally{
>             if(con == null){
>                 ll.add("Connection object is null");
>              //   return ll;
>             
>             }
> ----------------------Here is the output that I can see on my 
> jsp page,
> where I try to print out the linklist obtained from the 
> function above.
> 
> elements of link list read from database are -[dataSource object is,
> [EMAIL PROTECTED], Data source object is
> not null, Inside 1st try. Connection object found to be null, 
> Connection
> object is null]
> 
> 
>       
> 
> Thanks.
> Avinash Arora
> 
> 
> -----Original Message-----
> From: Daxin Zuo [mailto:[EMAIL PROTECTED] 
> Sent: Monday, May 03, 2004 3:34 PM
> To: Tomcat Users List
> Subject: RE: DB connection pool problem
> 
>   I have just created a "pool" -- I hope it is really a pool. I used
> jtds
> jdbc driver to MS SQL Server on Windows. You may find some thing
> similar.
> Holp it helps.
> 
> 1) bellow is the text in tomcat\conf\server.xml
> <GlobalNamingResources>
>   <Resource name="jdbc/DirectSQL" auth="Container"
> type="javax.sql.DataSource"/>
>    <ResourceParams name="jdbc/DirectSQL">
>      <parameter>
>        <name>factory</name>
>        <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
>      </parameter>
> 
>      <parameter>
>        <name>maxActive</name>
>        <value>255</value>
>      </parameter>
>      <parameter>
>        <name>maxIdle</name>
>        <value>10</value>
>      </parameter>
>      <parameter>
>        <name>maxWait</name>
>        <value>10000</value>
>      </parameter>
>      <parameter>
>       <name>username</name>
>       <value>user1</value>
>      </parameter>
>      <parameter>
>       <name>password</name>
>       <value>passwd1</value>
>      </parameter>
>      <parameter>
>         <name>driverClassName</name>
>         <value>net.sourceforge.jtds.jdbc.Driver</value>
>      </parameter>
>      <parameter>
>        <name>url</name>
>        <value>jdbc:jtds:sqlserver://serverName:1433</value>
>      </parameter>
>    </ResourceParams>
>   ...
> 
> 2) bellow is the text in tomcat\conf\Catalina\localhost\ROOT.XML --I
> create
> this file by myself
> <Context path="" docBase="ROOT" debug="0" privileged="true">
> 
>   <!-- Link to the user database using dbc:jtds:sqlserver -->
>  <ResourceLink name="jdbc/DirectSQL" global="jdbc/DirectSQL"
>                 type="javax.sql.DataSource"/>
> </Context>
> This "name" is used in Java code. "global" is the name in xml 
> file. they
> can
> be different.
> 
> 3) my test jsp file is in \tomcat\webapps\ROOT\zuo\
> 
>               Context ctx = new InitialContext();
>               if (ctx == null) {
>                       throw new Exception("Boom - No Context");
>               }
>               DataSource ds = (DataSource)
> ctx.lookup("java:comp/env/jdbc/DirectSQL");
>               if (ds != null)
>               con = ds.getConnection();
>               if (con != null){
>                       str = "select * from myTable";
>                       pStateSearch = con.prepareStatement(str,
> ResultSet.TYPE_SCROLL_SENSITIVE,
> ResultSet.CONCUR_READ_ONLY );
>                       rs = pStateSearch.executeQuery();
>                       ....
> 
> That's all.
> 
> -----Original Message-----
> From: Arora, Avinash [mailto:[EMAIL PROTECTED]
> Sent: Monday, May 03, 2004 3:10 PM
> To: Tomcat Users List
> Subject: DB connection pool problem
> 
> 
> Hi,
>    I am also having the problem with the connection pools. Since I am
> writing an application first time by using connection pools, 
> I created a
> test application DBTest. I edited my server.xml and web.xml (of my
> application in following way--
> #added to server.xml
> <Context path="/DBTest" docBase="DBTest" debug="0"
>                         reloadable="true">
>             <ResourceParams name="jdbc/conversion">
>                 <parameter>
>                     <name>username</name>
>                     <value>ROOT</value>
>                 </parameter>
>                 <parameter>
>                     <name>password</name>
>                     <value>PASSWORD</value>
>                 </parameter>
>                 <parameter>
>                     <name>driverClassName</name>
>                     <value>com.mysql.jdbc.Driver</value>
>                  </parameter>
>                  <parameter>
>                     <name>url</name>
>                     <value>jdbc:mysql://localhost/DB</value>
>                   </parameter>
>               </ResourceParams>
>            </Context>
> 
> #web.xml
> <web-app>
>     <description>MySQL Test App</description>
>   <resource-ref>
>     <res-ref-name>jdbc/conversion</res-ref-name>
>       <res-type>javax.sql.DataSource</res-type>
>       <res-auth>Container</res-auth>
>   </resource-ref>
> </web-app>
> And I added the following statements to my Java class, (which works
> fine, when I use the connection objects by hardcoding the username and
> db).--
> 
> Context init = new InitialContext();
>  Context ctx = (Context) init.lookup("java:comp/env");
>  DataSource dataSource = (DataSource)ctx.lookup("jdbc/conversion");
> 
> But even after, making these changes, I cannot read any thing from
> database. I was wondering what more changes I need to made. I 
> also tried
> to run my JAVA class (DAO) from command line, but I get the following
> exception--
> 
> Need to specify class name in environment or system property, or as an
> applet parameter, or in an application resource file:
> java.naming.factory.initial
> 
> I tried to print outs the place where exception occurs in my code and
> found that exception occurs at
> dataSource = (DataSource)ctx.lookup("jdbc/conversion");
> 
> Can any body please comment on whats going on wrong? When I run from
> command line, is tomcat used, I don't think so? So where is 
> the problem?
> Any ideas??
> Avinash Arora
> 
> 
> 
> ---------------------------------------------------------------------
> 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]
> 


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

Reply via email to