You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by David kerber <dc...@verizon.net> on 2012/03/23 15:11:59 UTC
jdbc driver location in TC 7
Kind of related to the upgrade issue I ran into yesterday:
Where is the recommended location for jdbc driver jars in TC7, when I'm
using separate CATALINA_HOME and CATALINA_BASE locations? If it makes a
difference, I am not using tomcat's connection pooling; it's handled in
my app.
I generally would prefer to put it in my webapp's lib directory, and it
works from there, but are there other considerations I might not be
taking into account?
Thanks!
Dave
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by Torsten Krah <tk...@fachschaft.imn.htwk-leipzig.de>.
Am Montag, den 26.03.2012, 05:30 -0600 schrieb Terence M. Bandoian:
> Apparently, Tomcat (6.0.29) takes care of that if the
> driver is located in the Tomcat lib directory but not if it is
> located
> in web application's lib directory.
Tomcat does not take care afaik - the classloader is not the webapps
classloader, so there is no leak to report.
Re: jdbc driver location in TC 7
Posted by Pid <pi...@pidster.com>.
On 26/03/2012 12:30, Terence M. Bandoian wrote:
> On 1:59 PM, Pid * wrote:
>> On 25 Mar 2012, at 03:10, "Terence M. Bandoian"<te...@tmbsw.com>
>> wrote:
>>
>>> On 1:59 PM, Pid * wrote:
>>>> On 23 Mar 2012, at 21:59, David Kerber<dc...@verizon.net> wrote:
>>>>
>>>>> On 3/23/2012 6:51 PM, Terence M. Bandoian wrote:
>>>>>> On 1:59 PM, David kerber wrote:
>>>>>>> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>>>>>>>> From: David kerber [mailto:dckerber@verizon.net]
>>>>>>>>> Subject: jdbc driver location in TC 7
>>>>>>>>> Where is the recommended location for jdbc driver jars in TC7,
>>>>>>>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>>>>>>> If you look in conf/catalina.properties, you'll see the order in
>>>>>>>> which the common loader searches directories.
>>>>>>>>
>>>>>>>>> If it makes a difference, I am not using tomcat's connection
>>>>>>>>> pooling; it's handled in my app.
>>>>>>>> That's a critical difference.
>>>>>>>>
>>>>>>>>> I generally would prefer to put it in my webapp's lib directory
>>>>>>>> That is the correct location, since Tomcat is not involved.
>>>>>>> Great; thanks for confirming.
>>>>>>>
>>>>>>> D
>>>>>>>
>>>>>> Hi, David-
>>>>>>
>>>>>> I prefer the web app's lib directory as well but when I place the
>>>>>> JDBC driver there, a memory leak detection error is logged when I
>>>>>> stop Tomcat. Not a big deal but I'd prefer not to have to
>>>>>> explain. When I move the JDBC driver to the Tomcat lib directory,
>>>>>> the error is no longer logged. (Tomcat 6)
>>>>> Even better would be to fix your probable connection leak. I had
>>>>> some too, when I went to a version that had the leak detection, but
>>>>> was able to fix them all.
>>>>>
>>>>> D
>>>> Yup. Just deregister the DB driver on app stop using a
>>>> ServletContexListener.
>>>>
>>>>
>>>> p
>>>
>>> Thanks. I'll give that a try. Wouldn't I see a connection leak no
>>> matter where I placed the driver?
>> Only if you're not returning / cleaning up connection objects properly.
>>
>>
>>> De-registering the driver may do the trick.
>> This addresses the driver leak& warning by Tomcat.
>>
>>
>> p
>
>
> Thanks again. Explicitly de-registering the driver eliminated the
> Tomcat error message with the driver located in WEB-INF/lib. From what
> I've read, JDBC 4.0 drivers automatically register themselves with
> DriverManager but I haven't seen anything about automatic
> de-registration. Apparently, Tomcat (6.0.29) takes care of that if the
> driver is located in the Tomcat lib directory but not if it is located
> in web application's lib directory. Or maybe de-registration isn't a
> concern when Tomcat is shutting down.
The other way round, I think. Read the warning message.
p
> -Terence Bandoian
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
--
[key:62590808]
Re: jdbc driver location in TC 7
Posted by "Terence M. Bandoian" <te...@tmbsw.com>.
On 1:59 PM, Pid * wrote:
> On 25 Mar 2012, at 03:10, "Terence M. Bandoian"<te...@tmbsw.com> wrote:
>
>> On 1:59 PM, Pid * wrote:
>>> On 23 Mar 2012, at 21:59, David Kerber<dc...@verizon.net> wrote:
>>>
>>>> On 3/23/2012 6:51 PM, Terence M. Bandoian wrote:
>>>>> On 1:59 PM, David kerber wrote:
>>>>>> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>>>>>>> From: David kerber [mailto:dckerber@verizon.net]
>>>>>>>> Subject: jdbc driver location in TC 7
>>>>>>>> Where is the recommended location for jdbc driver jars in TC7,
>>>>>>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>>>>>> If you look in conf/catalina.properties, you'll see the order in which the common loader searches directories.
>>>>>>>
>>>>>>>> If it makes a difference, I am not using tomcat's connection
>>>>>>>> pooling; it's handled in my app.
>>>>>>> That's a critical difference.
>>>>>>>
>>>>>>>> I generally would prefer to put it in my webapp's lib directory
>>>>>>> That is the correct location, since Tomcat is not involved.
>>>>>> Great; thanks for confirming.
>>>>>>
>>>>>> D
>>>>>>
>>>>> Hi, David-
>>>>>
>>>>> I prefer the web app's lib directory as well but when I place the JDBC driver there, a memory leak detection error is logged when I stop Tomcat. Not a big deal but I'd prefer not to have to explain. When I move the JDBC driver to the Tomcat lib directory, the error is no longer logged. (Tomcat 6)
>>>> Even better would be to fix your probable connection leak. I had some too, when I went to a version that had the leak detection, but was able to fix them all.
>>>>
>>>> D
>>> Yup. Just deregister the DB driver on app stop using a ServletContexListener.
>>>
>>>
>>> p
>>
>> Thanks. I'll give that a try. Wouldn't I see a connection leak no matter where I placed the driver?
> Only if you're not returning / cleaning up connection objects properly.
>
>
>> De-registering the driver may do the trick.
> This addresses the driver leak& warning by Tomcat.
>
>
> p
Thanks again. Explicitly de-registering the driver eliminated the
Tomcat error message with the driver located in WEB-INF/lib. From what
I've read, JDBC 4.0 drivers automatically register themselves with
DriverManager but I haven't seen anything about automatic
de-registration. Apparently, Tomcat (6.0.29) takes care of that if the
driver is located in the Tomcat lib directory but not if it is located
in web application's lib directory. Or maybe de-registration isn't a
concern when Tomcat is shutting down.
-Terence Bandoian
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by "Terence M. Bandoian" <te...@tmbsw.com>.
On 1:59 PM, Pid * wrote:
> On 25 Mar 2012, at 03:10, "Terence M. Bandoian"<te...@tmbsw.com> wrote:
>
>> On 1:59 PM, Pid * wrote:
>>> On 23 Mar 2012, at 21:59, David Kerber<dc...@verizon.net> wrote:
>>>
>>>> On 3/23/2012 6:51 PM, Terence M. Bandoian wrote:
>>>>> On 1:59 PM, David kerber wrote:
>>>>>> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>>>>>>> From: David kerber [mailto:dckerber@verizon.net]
>>>>>>>> Subject: jdbc driver location in TC 7
>>>>>>>> Where is the recommended location for jdbc driver jars in TC7,
>>>>>>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>>>>>> If you look in conf/catalina.properties, you'll see the order in which the common loader searches directories.
>>>>>>>
>>>>>>>> If it makes a difference, I am not using tomcat's connection
>>>>>>>> pooling; it's handled in my app.
>>>>>>> That's a critical difference.
>>>>>>>
>>>>>>>> I generally would prefer to put it in my webapp's lib directory
>>>>>>> That is the correct location, since Tomcat is not involved.
>>>>>> Great; thanks for confirming.
>>>>>>
>>>>>> D
>>>>>>
>>>>> Hi, David-
>>>>>
>>>>> I prefer the web app's lib directory as well but when I place the JDBC driver there, a memory leak detection error is logged when I stop Tomcat. Not a big deal but I'd prefer not to have to explain. When I move the JDBC driver to the Tomcat lib directory, the error is no longer logged. (Tomcat 6)
>>>> Even better would be to fix your probable connection leak. I had some too, when I went to a version that had the leak detection, but was able to fix them all.
>>>>
>>>> D
>>> Yup. Just deregister the DB driver on app stop using a ServletContexListener.
>>>
>>>
>>> p
>>
>> Thanks. I'll give that a try. Wouldn't I see a connection leak no matter where I placed the driver?
> Only if you're not returning / cleaning up connection objects properly.
>
>
>> De-registering the driver may do the trick.
> This addresses the driver leak& warning by Tomcat.
>
>
> p
>
Exactly.
-Terence Bandoian
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by Pid * <pi...@pidster.com>.
On 25 Mar 2012, at 03:10, "Terence M. Bandoian" <te...@tmbsw.com> wrote:
> On 1:59 PM, Pid * wrote:
>> On 23 Mar 2012, at 21:59, David Kerber<dc...@verizon.net> wrote:
>>
>>> On 3/23/2012 6:51 PM, Terence M. Bandoian wrote:
>>>> On 1:59 PM, David kerber wrote:
>>>>> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>>>>>> From: David kerber [mailto:dckerber@verizon.net]
>>>>>>> Subject: jdbc driver location in TC 7
>>>>>>> Where is the recommended location for jdbc driver jars in TC7,
>>>>>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>>>>> If you look in conf/catalina.properties, you'll see the order in which the common loader searches directories.
>>>>>>
>>>>>>> If it makes a difference, I am not using tomcat's connection
>>>>>>> pooling; it's handled in my app.
>>>>>> That's a critical difference.
>>>>>>
>>>>>>> I generally would prefer to put it in my webapp's lib directory
>>>>>> That is the correct location, since Tomcat is not involved.
>>>>> Great; thanks for confirming.
>>>>>
>>>>> D
>>>>>
>>>> Hi, David-
>>>>
>>>> I prefer the web app's lib directory as well but when I place the JDBC driver there, a memory leak detection error is logged when I stop Tomcat. Not a big deal but I'd prefer not to have to explain. When I move the JDBC driver to the Tomcat lib directory, the error is no longer logged. (Tomcat 6)
>>> Even better would be to fix your probable connection leak. I had some too, when I went to a version that had the leak detection, but was able to fix them all.
>>>
>>> D
>> Yup. Just deregister the DB driver on app stop using a ServletContexListener.
>>
>>
>> p
>
>
> Thanks. I'll give that a try. Wouldn't I see a connection leak no matter where I placed the driver?
Only if you're not returning / cleaning up connection objects properly.
> De-registering the driver may do the trick.
This addresses the driver leak & warning by Tomcat.
p
> -Terence Bandoian
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by "Terence M. Bandoian" <te...@tmbsw.com>.
On 1:59 PM, Pid * wrote:
> On 23 Mar 2012, at 21:59, David Kerber<dc...@verizon.net> wrote:
>
>> On 3/23/2012 6:51 PM, Terence M. Bandoian wrote:
>>> On 1:59 PM, David kerber wrote:
>>>> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>>>>> From: David kerber [mailto:dckerber@verizon.net]
>>>>>> Subject: jdbc driver location in TC 7
>>>>>> Where is the recommended location for jdbc driver jars in TC7,
>>>>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>>>> If you look in conf/catalina.properties, you'll see the order in which the common loader searches directories.
>>>>>
>>>>>> If it makes a difference, I am not using tomcat's connection
>>>>>> pooling; it's handled in my app.
>>>>> That's a critical difference.
>>>>>
>>>>>> I generally would prefer to put it in my webapp's lib directory
>>>>> That is the correct location, since Tomcat is not involved.
>>>> Great; thanks for confirming.
>>>>
>>>> D
>>>>
>>> Hi, David-
>>>
>>> I prefer the web app's lib directory as well but when I place the JDBC driver there, a memory leak detection error is logged when I stop Tomcat. Not a big deal but I'd prefer not to have to explain. When I move the JDBC driver to the Tomcat lib directory, the error is no longer logged. (Tomcat 6)
>> Even better would be to fix your probable connection leak. I had some too, when I went to a version that had the leak detection, but was able to fix them all.
>>
>> D
> Yup. Just deregister the DB driver on app stop using a ServletContexListener.
>
>
> p
Thanks. I'll give that a try. Wouldn't I see a connection leak no
matter where I placed the driver? De-registering the driver may do the
trick.
-Terence Bandoian
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by Pid * <pi...@pidster.com>.
On 23 Mar 2012, at 21:59, David Kerber <dc...@verizon.net> wrote:
> On 3/23/2012 6:51 PM, Terence M. Bandoian wrote:
>> On 1:59 PM, David kerber wrote:
>>> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>>>> From: David kerber [mailto:dckerber@verizon.net]
>>>>> Subject: jdbc driver location in TC 7
>>>>
>>>>> Where is the recommended location for jdbc driver jars in TC7,
>>>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>>>
>>>> If you look in conf/catalina.properties, you'll see the order in which the common loader searches directories.
>>>>
>>>>> If it makes a difference, I am not using tomcat's connection
>>>>> pooling; it's handled in my app.
>>>>
>>>> That's a critical difference.
>>>>
>>>>> I generally would prefer to put it in my webapp's lib directory
>>>>
>>>> That is the correct location, since Tomcat is not involved.
>>>
>>> Great; thanks for confirming.
>>>
>>> D
>>>
>>
>> Hi, David-
>>
>> I prefer the web app's lib directory as well but when I place the JDBC driver there, a memory leak detection error is logged when I stop Tomcat. Not a big deal but I'd prefer not to have to explain. When I move the JDBC driver to the Tomcat lib directory, the error is no longer logged. (Tomcat 6)
>
> Even better would be to fix your probable connection leak. I had some too, when I went to a version that had the leak detection, but was able to fix them all.
>
> D
Yup. Just deregister the DB driver on app stop using a ServletContexListener.
p
>> -Terence Bandoian
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by David Kerber <dc...@verizon.net>.
On 3/23/2012 6:51 PM, Terence M. Bandoian wrote:
> On 1:59 PM, David kerber wrote:
>> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>>> From: David kerber [mailto:dckerber@verizon.net]
>>>> Subject: jdbc driver location in TC 7
>>>
>>>> Where is the recommended location for jdbc driver jars in TC7,
>>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>>
>>> If you look in conf/catalina.properties, you'll see the order in
>>> which the common loader searches directories.
>>>
>>>> If it makes a difference, I am not using tomcat's connection
>>>> pooling; it's handled in my app.
>>>
>>> That's a critical difference.
>>>
>>>> I generally would prefer to put it in my webapp's lib directory
>>>
>>> That is the correct location, since Tomcat is not involved.
>>
>> Great; thanks for confirming.
>>
>> D
>>
>
> Hi, David-
>
> I prefer the web app's lib directory as well but when I place the JDBC
> driver there, a memory leak detection error is logged when I stop
> Tomcat. Not a big deal but I'd prefer not to have to explain. When I
> move the JDBC driver to the Tomcat lib directory, the error is no
> longer logged. (Tomcat 6)
Even better would be to fix your probable connection leak. I had some
too, when I went to a version that had the leak detection, but was able
to fix them all.
D
>
> -Terence Bandoian
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by "Terence M. Bandoian" <te...@tmbsw.com>.
On 1:59 PM, David kerber wrote:
> On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>>> From: David kerber [mailto:dckerber@verizon.net]
>>> Subject: jdbc driver location in TC 7
>>
>>> Where is the recommended location for jdbc driver jars in TC7,
>>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>>
>> If you look in conf/catalina.properties, you'll see the order in
>> which the common loader searches directories.
>>
>>> If it makes a difference, I am not using tomcat's connection
>>> pooling; it's handled in my app.
>>
>> That's a critical difference.
>>
>>> I generally would prefer to put it in my webapp's lib directory
>>
>> That is the correct location, since Tomcat is not involved.
>
> Great; thanks for confirming.
>
> D
>
Hi, David-
I prefer the web app's lib directory as well but when I place the JDBC
driver there, a memory leak detection error is logged when I stop
Tomcat. Not a big deal but I'd prefer not to have to explain. When I
move the JDBC driver to the Tomcat lib directory, the error is no longer
logged. (Tomcat 6)
-Terence Bandoian
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: jdbc driver location in TC 7
Posted by David kerber <dc...@verizon.net>.
On 3/23/2012 11:19 AM, Caldarale, Charles R wrote:
>> From: David kerber [mailto:dckerber@verizon.net]
>> Subject: jdbc driver location in TC 7
>
>> Where is the recommended location for jdbc driver jars in TC7,
>> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
>
> If you look in conf/catalina.properties, you'll see the order in which the common loader searches directories.
>
>> If it makes a difference, I am not using tomcat's connection
>> pooling; it's handled in my app.
>
> That's a critical difference.
>
>> I generally would prefer to put it in my webapp's lib directory
>
> That is the correct location, since Tomcat is not involved.
Great; thanks for confirming.
D
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
RE: jdbc driver location in TC 7
Posted by "Caldarale, Charles R" <Ch...@unisys.com>.
> From: David kerber [mailto:dckerber@verizon.net]
> Subject: jdbc driver location in TC 7
> Where is the recommended location for jdbc driver jars in TC7,
> when I'm using separate CATALINA_HOME and CATALINA_BASE locations?
If you look in conf/catalina.properties, you'll see the order in which the common loader searches directories.
> If it makes a difference, I am not using tomcat's connection
> pooling; it's handled in my app.
That's a critical difference.
> I generally would prefer to put it in my webapp's lib directory
That is the correct location, since Tomcat is not involved.
- Chuck
THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org