Java Mailing List Archive

http://www.junlu.com/

Home » Home (12/2007) » Tomcat Users »

RE: Database pool problem (new problem)

Chaikin, Yaakov Y (US SSA)

2003-12-07


> I understand that you do not have a choice, but please not that the
> JDBC-ODBC bridge is *not for production* [according to Sun], it is
> *solely* for development and evaluation.
>
> The bridge contains identified bugs that will not be addressed [i e
> support is EOLed]. So, you are using this at your own risk.
>
> Check out the bug parade of the bridge; you might have encountered a
> well-known, documented bug. It that case, there might be a published
> work-around.

Yes, true. But this worked 100% for the Realm with that same driver.

Someone already solved that problem. I need to a parameter "username",
not "user".

Now, I am having a different problem. My database connection is not
being released even though I am closing it.

Could someone help me out with this? (I am inlcluding my server.xml file
just in case).

When I start up the server, however, I get the following exceptions in
the log file:
2003-12-07 04:24:21 StandardContext[/webdav]: Resources start failed:
java.lang.IllegalArgumentException: Document base
C:\jakarta-tomcat-4.1.24-LE-jdk14\webapps\webdav does not exist or is
not a readable directory
 at
org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.jav
a:193)
 at
org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.
java:3344)
 at
org.apache.catalina.core.StandardContext.start (StandardContext.java:3474
)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardHost.start (StandardHost.java:754)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardEngine.start (StandardEngine.java:363)
 at
org.apache.catalina.core.StandardService.start (StandardService.java:497)
 at
org.apache.catalina.core.StandardServer.start (StandardServer.java:2190)
 at org.apache.catalina.startup.Catalina.start (Catalina.java:512)
 at
org.apache.catalina.startup.Catalina.execute (Catalina.java:400)
 at
org.apache.catalina.startup.Catalina.process (Catalina.java:180)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)
 at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)
 at java.lang.reflect.Method.invoke (Method.java:324)
 at
org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:203)

2003-12-07 04:24:21 StandardContext[/webdav]: Context startup failed due
to previous errors
2003-12-07 04:24:21 StandardContext[/webdav]: Exception during cleanup
after start failed
LifecycleException: Container StandardContext[/webdav] has not been
started
 at
org.apache.catalina.core.StandardContext.stop (StandardContext.java:3658)
 at
org.apache.catalina.core.StandardContext.start (StandardContext.java:3636
)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardHost.start (StandardHost.java:754)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardEngine.start (StandardEngine.java:363)
 at
org.apache.catalina.core.StandardService.start (StandardService.java:497)
 at
org.apache.catalina.core.StandardServer.start (StandardServer.java:2190)
 at org.apache.catalina.startup.Catalina.start (Catalina.java:512)
 at
org.apache.catalina.startup.Catalina.execute (Catalina.java:400)
 at
org.apache.catalina.startup.Catalina.process (Catalina.java:180)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)
 at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)
 at java.lang.reflect.Method.invoke (Method.java:324)
 at
org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:203)

2003-12-07 04:24:21 StandardContext[/tomcat-docs]: Resources start
failed:
java.lang.IllegalArgumentException: Document base
C:\jakarta-tomcat-4.1.24-LE-jdk14\webapps\tomcat-docs does not exist or
is not a readable directory
 at
org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.jav
a:193)
 at
org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.
java:3344)
 at
org.apache.catalina.core.StandardContext.start (StandardContext.java:3474
)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardHost.start (StandardHost.java:754)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardEngine.start (StandardEngine.java:363)
 at
org.apache.catalina.core.StandardService.start (StandardService.java:497)
 at
org.apache.catalina.core.StandardServer.start (StandardServer.java:2190)
 at org.apache.catalina.startup.Catalina.start (Catalina.java:512)
 at
org.apache.catalina.startup.Catalina.execute (Catalina.java:400)
 at
org.apache.catalina.startup.Catalina.process (Catalina.java:180)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)
 at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)
 at java.lang.reflect.Method.invoke (Method.java:324)
 at
org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:203)

2003-12-07 04:24:21 StandardContext[/tomcat-docs]: Context startup
failed due to previous errors
2003-12-07 04:24:21 StandardContext[/tomcat-docs]: Exception during
cleanup after start failed
LifecycleException: Container StandardContext[/tomcat-docs] has not
been started
 at
org.apache.catalina.core.StandardContext.stop (StandardContext.java:3658)
 at
org.apache.catalina.core.StandardContext.start (StandardContext.java:3636
)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardHost.start (StandardHost.java:754)
 at
org.apache.catalina.core.ContainerBase.start (ContainerBase.java:1188)
 at
org.apache.catalina.core.StandardEngine.start (StandardEngine.java:363)
 at
org.apache.catalina.core.StandardService.start (StandardService.java:497)
 at
org.apache.catalina.core.StandardServer.start (StandardServer.java:2190)
 at org.apache.catalina.startup.Catalina.start (Catalina.java:512)
 at
org.apache.catalina.startup.Catalina.execute (Catalina.java:400)
 at
org.apache.catalina.startup.Catalina.process (Catalina.java:180)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)
 at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)
 at java.lang.reflect.Method.invoke (Method.java:324)
 at
org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:203)

2003-12-07 04:24:21 WebappLoader[/manager]: Deploying class repositories
to work directory
C:\jakarta-tomcat-4.1.29-full\work\Standalone\localhost\manager
2003-12-07 04:24:21 WebappLoader[/manager]: Reloading checks are enabled
for this Context
2003-12-07 04:24:21 ContextConfig[/manager]: Configured an authenticator
for method BASIC
2003-12-07 04:24:21 StandardManager[/manager]: Seeding random number
generator class java.security.SecureRandom
2003-12-07 04:24:21 StandardManager[/manager]: Seeding of random number
generator has been completed
2003-12-07 04:24:21 StandardWrapper[/manager:default]: Loading container
servlet default
2003-12-07 04:24:21 StandardWrapper[/manager:invoker]: Loading container
servlet invoker
2003-12-07 04:24:21 WebappLoader[]: Deploying class repositories to work
directory C:\jakarta-tomcat-4.1.29-full\work\Standalone\localhost\_
2003-12-07 04:24:21 WebappLoader[]: Reloading checks are enabled for
this Context
2003-12-07 04:24:21 StandardManager[]: Seeding random number generator
class java.security.SecureRandom
2003-12-07 04:24:21 StandardManager[]: Seeding of random number
generator has been completed
2003-12-07 04:24:21 StandardWrapper[:default]: Loading container servlet
default
2003-12-07 04:24:21 StandardWrapper[:invoker]: Loading container servlet
invoker
2003-12-07 04:24:21 HostConfig[localhost]: Deploying web application
directory examples
2003-12-07 04:24:21 StandardHost[localhost]: Installing web application
at context path /examples from URL
file:C:\jakarta-tomcat-4.1.29-full\webapps\examples
2003-12-07 04:24:21 WebappLoader[/examples]: Deploying class
repositories to work directory
C:\jakarta-tomcat-4.1.29-full\work\Standalone\localhost\examples
2003-12-07 04:24:21 WebappLoader[/examples]: Deploy class files
/WEB-INF/classes to
C:\jakarta-tomcat-4.1.29-full\webapps\examples\WEB-INF\classes
2003-12-07 04:24:21 ContextConfig[/examples]: Configured an
authenticator for method FORM
2003-12-07 04:24:21 StandardManager[/examples]: Seeding random number
generator class java.security.SecureRandom
2003-12-07 04:24:21 StandardManager[/examples]: Seeding of random number
generator has been completed
2003-12-07 04:24:21 ContextListener: contextInitialized()
2003-12-07 04:24:21 SessionListener: contextInitialized()
2003-12-07 04:24:21 StandardWrapper[/examples:default]: Loading
container servlet default
2003-12-07 04:24:21 StandardWrapper[/examples:invoker]: Loading
container servlet invoker


I would really appreciate if someone would help me out with this.

Thanks,
Yaakov.
<?xml version='1.0' encoding='utf-8'?>
<Server className="org.apache.catalina.core.StandardServer" debug="99"
 port="8005" shutdown="SHUTDOWN">
 <Logger className="org.apache.catalina.logger.FileLogger"
           debug="0" directory="logs"
           prefix="localhost_afecWEB_log."
           suffix=".txt"
           timestamp="true"
           verbosity="99"/>
 <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"
   debug="0" jsr77Names="false"/>
 <Listener
   className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"
   debug="0"/>
 <GlobalNamingResources>
   <Logger className="org.apache.catalina.logger.FileLogger"
           debug="0" directory="logs"
           prefix="resource_afecWEB_log."
           suffix=".txt"
           timestamp="true"
           verbosity="99"/>
   <Environment name="simpleValue" override="true" type="java.lang.Integer"
     value="30"/>
   <Resource auth="Container"
     description="User database that can be updated and saved"
     name="UserDatabase" scope="Shareable"
     type="org.apache.catalina.UserDatabase"/>
   <ResourceParams name="UserDatabase">
     <parameter>
       <name>factory</name>
       <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
     </parameter>
     <parameter>
       <name>pathname</name>
       <value>conf/tomcat-users.xml</value>
     </parameter>
   </ResourceParams>
   
   <Resource name="UserDatabase" auth="Container"
     type="org.apache.catalina.UserDatabase"
     description="User database that can be updated and saved">
   </Resource>
   <ResourceParams name="UserDatabase">
     <parameter>
       <name>factory</name>
       <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
     </parameter>
     <parameter>
       <name>pathname</name>
       <value>conf/tomcat-users.xml</value>
     </parameter>
   </ResourceParams>

   
   <!--*** BEGIN Physical AFEC database configuration **-->
   <Resource
     name="afec/web/database"
     auth="Container"
     description="AFEC database; stores info about documents, login"
     type="javax.sql.DataSource"
     scope="Shareable"/>
   <ResourceParams name="afec/web/database">
     <parameter>
       <name>factory</name>
       <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
     </parameter>
     <parameter>
         <name>maxActive</name>
       <value>10</value>
     </parameter>
     <parameter>
       <name>maxIdle</name>
       <value>5</value>
     </parameter>
     <parameter>
       <name>maxWait</name>
       <value>10000</value>
     </parameter>
     <parameter>
       <name>driverClassName</name>
       <value>sun.jdbc.odbc.JdbcOdbcDriver</value>
     </parameter>
     <parameter>
       <name>url</name>
       <value>jdbc:odbc:afec</value>
     </parameter>
     <parameter>
       <name>username</name>
       <value>default</value>
     </parameter>
     <parameter>
       <name>password</name>
       <value>afecrelease2003</value>
     </parameter>
     <parameter>
       <name>removeAbandoned</name>
       <value>true</value>
       </parameter>
       <parameter>
       <name>removeAbandonedTimeout</name>
       <value>60</value>
       </parameter>
       <parameter>
       <name>logAbandoned</name>
       <value>true</value>
       </parameter>
       
     
   </ResourceParams>
   
 </GlobalNamingResources>
 
 <Service className="org.apache.catalina.core.StandardService" debug="0"
   name="Tomcat-Standalone">
   <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
     acceptCount="100" bufferSize="2048" compression="off"
     connectionLinger="-1" connectionTimeout="20000" debug="0"
     disableUploadTimeout="true" enableLookups="true"
     maxKeepAliveRequests="100" maxProcessors="75" minProcessors="5"
     port="80"
     protocolHandlerClassName="org.apache.coyote.http11.Http11Protocol"
     proxyPort="0" redirectPort="8443" scheme="http" secure="false"
     tcpNoDelay="true" useURIValidationHack="false">
     <Factory
       className="org.apache.catalina.net.DefaultServerSocketFactory"/>
   </Connector>
   <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
     acceptCount="10" bufferSize="2048" compression="off"
     connectionLinger="-1" connectionTimeout="0" debug="0"
     disableUploadTimeout="false" enableLookups="true"
     maxKeepAliveRequests="100" maxProcessors="75" minProcessors="5"
     port="8009"
     protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"
     proxyPort="0" redirectPort="8443" scheme="http" secure="false"
     tcpNoDelay="true" useURIValidationHack="false">
     <Factory
       className="org.apache.catalina.net.DefaultServerSocketFactory"/>
   </Connector>
   <Engine className="org.apache.catalina.core.StandardEngine" debug="0"
     defaultHost="localhost"
     mapperClass="org.apache.catalina.core.StandardEngineMapper"
     name="Standalone">
     <Host className="org.apache.catalina.core.StandardHost"
       appBase="webapps"
       autoDeploy="true"
       configClass="org.apache.catalina.startup.ContextConfig"
       contextClass="org.apache.catalina.core.StandardContext"
       debug="0"
       deployXML="true"
       errorReportValveClass="org.apache.catalina.valves.ErrorReportValve"
       liveDeploy="true"
       mapperClass="org.apache.catalina.core.StandardHostMapper"
       name="localhost"
       unpackWARs="false">
       <Context className="org.apache.catalina.core.StandardContext"
         cachingAllowed="true"
         charsetMapperClass="org.apache.catalina.util.CharsetMapper"
         cookies="true" crossContext="true" debug="0"
         displayName="Tomcat Administration Application"
         docBase="../server/webapps/admin"
         mapperClass="org.apache.catalina.core.StandardContextMapper"
         path="/admin" privileged="true" reloadable="true"
         swallowOutput="false" useNaming="true"
         wrapperClass="org.apache.catalina.core.StandardWrapper">
         <Logger className="org.apache.catalina.logger.FileLogger"
           debug="0" directory="logs" prefix="localhost_admin_log."
           suffix=".txt" timestamp="true" verbosity="1"/>
       </Context>
       <Context className="org.apache.catalina.core.StandardContext"
         cachingAllowed="true"
         charsetMapperClass="org.apache.catalina.util.CharsetMapper"
         cookies="true" crossContext="true" debug="0"
         displayName="Webdav Content Management"
         docBase="C:\jakarta-tomcat-4.1.24-LE-jdk14\webapps\webdav"
         mapperClass="org.apache.catalina.core.StandardContextMapper"
         path="/webdav" privileged="false" reloadable="true"
         swallowOutput="false" useNaming="true"
         wrapperClass="org.apache.catalina.core.StandardWrapper">
       </Context>
       
       <!--*** BEGIN AFECWEB Context ***-->
       <Context className="org.apache.catalina.core.StandardContext"
         cachingAllowed="true"
         charsetMapperClass="org.apache.catalina.util.CharsetMapper"
         cookies="true"
         crossContext="true"
         debug="0"
         displayName="AFECWEB"
         docBase="c:/corej2ee/stage/wls/afecWebApp/afecWEB.war"
         mapperClass="org.apache.catalina.core.StandardContextMapper"
         path="/afecWEB"
         privileged="false"
         reloadable="true"
         swallowOutput="false"
         useNaming="true"
         wrapperClass="org.apache.catalina.core.StandardWrapper">
         <Logger className="org.apache.catalina.logger.FileLogger"
           debug="0" directory="logs"
           prefix="localhost_afecWEB_log."
           suffix=".txt"
           timestamp="true"
           verbosity="99"/>
         <!-- <Resource name="jdbc/afecWEBDB" auth="Container"
           description="AFEC database; stores info about documents, login"
           type="javax.sql.DataSource" scope="Shareable" />
         <ResourceParams name="jdbc/afecWEBDB">
           <parameter>
             <name>factory</name>
             <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
           </parameter>
           <parameter>
             <name>maxActive</name>
             <value>10</value>
           </parameter>
           <parameter>
             <name>maxIdle</name>
             <value>5</value>
           </parameter>
           <parameter>
             <name>maxWait</name>
             <value>10000</value>
           </parameter>
           <parameter>
             <name>driverClassName</name>
             <value>sun.jdbc.odbc.JdbcOdbcDriver</value>
           </parameter>
           <parameter>
             <name>url</name>
             <value>jdbc:odbc:afec</value>
           </parameter>
           <parameter>
             <name>username</name>
             <value>default</value>
           </parameter>
           <parameter>
             <name>password</name>
             <value></value>
           </parameter>
         </ResourceParams>
         -->
         <ResourceLink global="afec/web/database" name="jdbc/afecWEBDB" type="javax.sql.DataSource"/>

       </Context>
       <!--*** END AFECWEB Context ***-->
   
       <Context className="org.apache.catalina.core.StandardContext"
         cachingAllowed="true"
         charsetMapperClass="org.apache.catalina.util.CharsetMapper"
         cookies="true" crossContext="true" debug="0"
         displayName="Tomcat Documentation"
         docBase="C:\jakarta-tomcat-4.1.24-LE-jdk14\webapps\tomcat-docs"
         mapperClass="org.apache.catalina.core.StandardContextMapper"
         path="/tomcat-docs" privileged="false" reloadable="true"
         swallowOutput="false" useNaming="true"
         wrapperClass="org.apache.catalina.core.StandardWrapper">
       </Context>
       <Context className="org.apache.catalina.core.StandardContext"
         cachingAllowed="true"
         charsetMapperClass="org.apache.catalina.util.CharsetMapper"
         cookies="true" crossContext="true" debug="0"
         displayName="Welcome to Tomcat" docBase="ROOT"
         mapperClass="org.apache.catalina.core.StandardContextMapper"
         path="" privileged="false" reloadable="true"
         swallowOutput="false" useNaming="true"
         wrapperClass="org.apache.catalina.core.StandardWrapper">
       </Context>
       <Context className="org.apache.catalina.core.StandardContext"
         cachingAllowed="true"
         charsetMapperClass="org.apache.catalina.util.CharsetMapper"
         cookies="true" crossContext="true" debug="0"
         displayName="Tomcat Manager Application"
         docBase="../server/webapps/manager"
         mapperClass="org.apache.catalina.core.StandardContextMapper"
         path="/manager" privileged="true" reloadable="true"
         swallowOutput="false" useNaming="true"
         wrapperClass="org.apache.catalina.core.StandardWrapper">
         <ResourceLink global="UserDatabase" name="users"
           type="org.apache.catalina.UserDatabase"/>
       </Context>
       <DefaultContext
         className="org.apache.catalina.core.StandardDefaultContext"
         cookies="true" crossContext="true" name="defaultContext"
         reloadable="true" swallowOutput="false" useNaming="true"
         wrapperClass="org.apache.catalina.core.StandardWrapper">
       </DefaultContext>
       <Logger className="org.apache.catalina.logger.FileLogger"
         debug="0" directory="logs" prefix="localhost_log."
         suffix=".txt" timestamp="true" verbosity="1"/>
     </Host>
     <Logger className="org.apache.catalina.logger.FileLogger" debug="0"
       directory="logs" prefix="catalina_log." suffix=".txt"
       timestamp="true" verbosity="1"/>
     <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
          debug="0" resourceName="UserDatabase"/>
     <!-- <Realm className="org.apache.catalina.realm.JDBCRealm"
       connectionName="default" connectionPassword="afecrelease2003"
       connectionURL="jdbc:odbc:afec" debug="0"
       driverName="sun.jdbc.odbc.JdbcOdbcDriver" roleNameCol="UserRole"
       userCredCol="UserPassword" userNameCol="UserName"
       userRoleTable="TestUsers" userTable="TestUsers" validate="true"
       /> -->
   </Engine>
 </Service>
</Server>
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@(protected)
For additional commands, e-mail: tomcat-user-help@(protected)
©2008 junlu.com - Jax Systems, LLC, U.S.A.