Hi,

I am having a problem where the lock on the database is not being
released. I am using database connection pooling and I am just running a
test app and certainly DO close my connections. I double checked that
the code that closes the connection is being called and it is.

What other things can I check or might be doing wrong?

I am using the M$ Access as the database and the odbc bridge driver to
get to it.

When I shut down the server I would expect that the database pooling
releases all its connections. It does look like it though, since I still
still the databaseName.ldb file in that directory (MS Access way of lock
the database file).

I know that Sun says that it is not production level driver. However, I
have used this driver before in a standalone app and when you close a
connection, it certainly does release the lock on the database file.
This leads me to believe that it's NOT the driver problem, but my
configuration problem.

I am attaching the server.xml file just in case that would help in
solving the problem.

I would really appreciate any help.

Thank you.

Yaakov Chaikin
Software Engineer
BAE SYSTEMS
301-838-6899 (phone)
301-838-6802 (fax)
[EMAIL PROTECTED]


<?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="..\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"/>
					<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="..\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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to