On a different topic, do you have the database driver under WEB-INF/lib
or common/lib? The driver is not visible if put under WEB-INF/lib.

>>> [EMAIL PROTECTED] 01/12/04 08:38AM >>>
Yes, that sounds about right.  A manual restart of the server seems to
be required, which is what I meant by autodeployment not working.  As a
matter of fact, although I have not tried it yet, I would not be
surprised that a manual deploy to Tomcat would also require a server
restart.  

>From experience with other application servers (JBoss, Weblogic,...)
autodeploying usually means that you do not need to manually restart,
since the server does "whatever is needed" to make the application
usable (of course, assuming that you have already successfully deployed
the application at least once before - it is not rare for servers to
choke on the first autodeploy).

Btw, I got the same SQLException because my app also interacts with the
database on initialization.  Which is why I got into the habit of
shutting down before deploying, when a database is involved.

-----Original Message-----
From: ext Keshav Sarin [mailto:[EMAIL PROTECTED] 
Sent: Monday, January 12, 2004 9:25 AM
To: [EMAIL PROTECTED] 
Subject: RE: Datasource - OK in app context - Fails in Global context


When I tested 5.0 for auto deployment, the datasource JNDI context was
no longer available to the application and a SQLException was thrown
in
the logs (the app interacts with database on initialization). The
application worked fine after the server was restarted.

In 4.x, even sever restart wouldn't load the application. The
application directory had to be replaced. 5.0 doesn't have this issue.

>>> [EMAIL PROTECTED] 01/12/04 07:12AM >>>
I am using 5.0, so that should not be a problem.  

But are you sure the bug is fixed in 5.x?  Before this I had the
DataSource defined at the application context level, and I had noticed
that the application would crash if I redeployed without "shutting
down,
deleting the deployed application directory, restarting".  A nuisance,
but usable, so I didn't worry about it.  

In any case, Autodeploying and deploying to a live server was
definitely not working on 5.0.  If a developer wants to investigate
and
fix this flaw I'd be happy to do some test deploys to troubleshoot, if
not, the workaround works just fine.

Bruno.

-----Original Message-----
From: ext Keshav Sarin [mailto:[EMAIL PROTECTED] 
Sent: Friday, January 09, 2004 4:23 PM
To: [EMAIL PROTECTED] 
Subject: RE: Datasource - OK in app context - Fails in Global context


There's a catch though....

In TC 4.x, if you put a app context entry in the server.xml, the app
doesn't get reloaded even if the war is overwritten or the app
directory
is deleted or the server is restarted. The fully expanded (war)
directory has to be overwritten to webapps directory and server needs
to
be restarted to make it work.

This bug is fixed in 5.x.

>>> [EMAIL PROTECTED] 01/09/04 02:44PM >>>
Bingo!!!  That was it.

It might be a good idea to add a paragraph to the JDBC DataSources
section of the documentation that mentions:

(a) That global datasources are defined in <GlobalNamingResources> of
server.xml
(b) The need for the <ResourceLink> in the application context .xml
file

I had the mistaken impression that anything placed in the server.xml
file was automatically applied to all application contexts.  I am sure
that others make the same mistake.

Thanks, I have been pulling my hair on this issue for almost a month.

Bruno

-----Original Message-----
From: ext Keshav Sarin [mailto:[EMAIL PROTECTED] 
Sent: Friday, January 09, 2004 3:22 PM
To: [EMAIL PROTECTED]; Melloni Bruno (Nokia-BI/Dallas)
Subject: Re: Datasource - OK in app context - Fails in Global context


Have you defined a reference to the global resource in the
<ResourceLink> element of the application context ?

>>> [EMAIL PROTECTED] 01/09/04 10:38AM >>>
I have an Oracle JDBC datasource that I defined in the Tomcat5 context
for an application (conf/Catalina/localhost/nwg.xml).  Works fine,
context file listed below.  

But when I tried to move the datasource to the <GlobalNamingResources>
section of server.xml so that it would be accessible to all apps it
gets
recognized in the admin console, but not by the application.  

What gives?  I thought a Global resource is supposed to function
identically to an application resource.

Any help would be greatly welcomed.


nwg.xml:
  <Resource auth="Container" name="rcfDS"
type="javax.sql.DataSource"/>
  <ResourceParams name="rcfDS">
    <parameter>
      <name>factory</name>
      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    </parameter>    
    <parameter>
      <name>driverClassName</name>
      <value>oracle.jdbc.driver.OracleDriver</value>
    </parameter>
    <parameter>
      <name>url</name>
     
<value>jdbc:oracle:thin:@hostNameHere:portNumberHere:dbNameHere</value>
    </parameter>
    <parameter>
      <name>username</name>
      <value>usernameHere</value>
    </parameter>
    <parameter>
      <name>password</name>
      <value>userpasswordHere</value>
    </parameter>
    <parameter>
      <name>maxIdle</name>
      <value>10</value>
    </parameter>
    <parameter>
      <name>maxActive</name>
      <value>20</value>
    </parameter>
    <parameter>
      <name>maxWait</name>
      <value>-1</value>
    </parameter>
    <parameter>
      <name>removeAbandoned</name>
      <value>true</value>
    </parameter>
    <parameter>
      <name>logAbandoned</name>
      <value>true</value>
    </parameter>
  </ResourceParams>

Note: The JDBC driver is ojdbc14.jar and is present in common/lib, the
application's WEB-INF/lib and is present also in the JRE's lib/ext for
unrelated JAAS reasons.

Bruno Melloni
eBusiness Application Center, Americas
Nokia, Inc
6000 Connection Drive, Mailstop 4w223
Irving, TX  75039  USA
*Office: +1 (972)894-6120
*Cellular: +1 (469) 939-1067
* SMS:     [EMAIL PROTECTED] 
* 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] 




---------------------------------------------------------------------
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] 


---------------------------------------------------------------------
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