On Wed, 22 Oct 2003 12:18, Cam Smith wrote:
Hi tomcat-dev,
I just downloaded the latest builds in the hope that this bug might be
fixed:
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11662
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16116
Unfortunately it still seems to be present. I'm happy to go with 4.1 or
5.0 beta, but could someone please take a look at this? I would have
thought that global JDBC datasources plus auto-deployment is a pretty
mainstream configuration.
The following was posted a couple of days ago, and the bug marked as RESOLVED
and FIXED. However, there was also the comment included below which seems to
indicate that the resolution was *not* to place JDBC drivers in the
common/lib directory, but rather add the JDBC jar to the classpath manually.
This is rather confusing. This is a different behavior to Tomcat 4.0.4 (which
I'm using now), and is undocuented. Ideally it should be fixed so that the
common/lib directory is used, as is the case with older versions.
--- Additional Comments From [EMAIL PROTECTED] 2003-10-20 11:10 ---
I have been dealing with the same problem for a few days and managed to find
one solution for it.
I'm using Tomcat 4.1.27 and Sybase database running on Win2K(also tried in XP
and same assembly worked fine).
In my server.xml I have Context under host as follows:
Context path=/MyApp
docBase=MyApp
debug=5
reloadable=true
crossContext=true
Resource name=jdbc/dbref
auth=Container
type=javax.sql.DataSource/
ResourceParams name=jdbc/dbref
parameter
namefactory/name
valueorg.apache.commons.dbcp.BasicDataSourceFactory/value
/parameter
parameter
namemaxActive/name
value10/value
/parameter
parameter
namemaxIdle/name
value2/value
/parameter
parameter
namemaxWait/name
value1/value
/parameter
parameter
nameusername/name
valuereport/value
/parameter
parameter
namepassword/name
valuereport/value
/parameter
parameter
namedriverClassName/name
valuecom.sybase.jdbc2.jdbc.SybConnectionPoolDataSource/value
/parameter
parameter
nameurl/name
valuejdbc:sybase:Tds:xxx:5000/dbname/value
/parameter
parameter
nameremoveAbandoned/name
valuetrue/value
/parameter
parameter
nameremoveAbandonedTimeout/name
value60/value
/parameter
/ResourceParams
/Context
In my web.xml I have:
resource-ref
descriptionSybase Datasource/description
res-ref-namejdbc/dbref/res-ref-name
res-typejavax.sql.DataSource/res-type
res-authContainer/res-auth
/resource-ref
,and in Java:
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup(java:/comp/env);
dataSource = (javax.sql.DataSource)envContext.lookup(dataSourceName);
Connection con = dataSource.getConnection();
I installed Java 2 Runtime Environment 1.4.2_01 and modified system variables:
JAVA_HOME = j2re 1.4.2_01 install dir
CLASSPATH = 3rd party database driver jar directory
CATALINA_HOME = Tomcat install dir
Although Jakarta Tomcat 4.1 JNDI Datasource HOW-TO docs adviced not to
install 3rd party database drivers anywhere else than in
$CATALINA_HOME/common/lib I tried adding jar into CLASSPATH and it worked
fine.
Make sure you have jre installed and JAVA_HOME set into that dir and it should
work fine.
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]