You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Leonid Rozenblyum <lr...@gmail.com> on 2015/02/05 16:28:18 UTC

JDBC Realm & exceptions

Hello!

After upgrading from Tomcat7 to Tomcat8 we started facing exceptions:

rg.apache.catalina.realm.JDBCRealm getPassword
SEVERE: Exception performing authentication
org.postgresql.util.PSQLException: This statement has been closed.

They look like not giving any harm (?).

Could we do anything to avoid this? Is it some kind of
misconfiguration at our side or some issue in Tomcat?

I've googled and found
http://stackoverflow.com/questions/24534286/strange-jdbcream-exception-occurs-on-tomcat

but without any suggestions what to do.

Thanks for any help.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: JDBC Realm & exceptions

Posted by Leonid Rozenblyum <lr...@gmail.com>.
Thanks for the idea with the view!

On Thu, Feb 19, 2015 at 9:03 PM, Felix Schumacher
<fe...@internetallee.de> wrote:
> Am 19.02.2015 um 13:58 schrieb Leonid Rozenblyum:
>>
>> I'm sorry for the late response.
>>
>> 1. After deeper check I see our structure is NOT much more complex
>> than standard Tomcat structure.
>> Actually the significant difference is : user roles table has foreign
>> key to id in users table (so we join by id not by username)
>
> Maybe you could add a view to your database, so that it will do the join for
> you and you could use the normal DatasourceRealm instead.
>
> Regards
> Felix
>
>>
>> 2. Great news about fix in 8.0.19! We'll wait for it with impatience.
>>
>> On Fri, Feb 6, 2015 at 8:09 AM, Felix Schumacher
>> <fe...@internetallee.de> wrote:
>>>
>>>
>>> Am 5. Februar 2015 22:21:38 MEZ, schrieb Leonid Rozenblyum
>>> <lr...@gmail.com>:
>>>>
>>>> Hello Felix!
>>>> Thanks for the detail answer! Good suggestion about  DataSourceRealm!
>>>> (I thought about this possibility but then I discovered that we have
>>>> extended JDBCRealm to support some complex DB structure so maybe this
>>>> switch to another Realm is not SO easy as it should be).
>>>
>>> It would be a good idea to share what complex structure you need to
>>> support. Maybe it would be worth to extend the standard realms to support
>>> them as well.
>>>
>>> On the other hand the code of JDBCRealm and DataSourceRealm are quit
>>> similar, so it should be easy for you to port your code.
>>>
>>>> Is it a good idea to suggest reducing logging level inside the
>>>> JDBCRealm if this is not an issue to worry about? E.g. not SEVERE but
>>>> DEBUG or TRACE?
>>>
>>> I fixed the error, it should be in tomcat 8.0.19.
>>>
>>> Felix
>>>>
>>>>
>>>> On Thu, Feb 5, 2015 at 10:14 PM, Felix Schumacher
>>>> <fe...@internetallee.de> wrote:
>>>>>
>>>>> Hi Leonid,
>>>>>
>>>>> Am 05.02.2015 um 16:28 schrieb Leonid Rozenblyum:
>>>>>>
>>>>>> Hello!
>>>>>>
>>>>>> After upgrading from Tomcat7 to Tomcat8 we started facing
>>>>
>>>> exceptions:
>>>>>>
>>>>>> rg.apache.catalina.realm.JDBCRealm getPassword
>>>>>> SEVERE: Exception performing authentication
>>>>>> org.postgresql.util.PSQLException: This statement has been closed.
>>>>>>
>>>>>> They look like not giving any harm (?).
>>>>>
>>>>> JDBCRealm will try again after it reports the error, so no real harm
>>>>
>>>> for
>>>>>
>>>>> you.
>>>>>
>>>>> The exception gets thrown, because the PreparedStatement is used with
>>>>
>>>> a
>>>>>
>>>>> try-with block, which closes the instance variable, which is reused
>>>>
>>>> later
>>>>>
>>>>> (then obviously closed :( ).
>>>>>>
>>>>>> Could we do anything to avoid this? Is it some kind of
>>>>>> misconfiguration at our side or some issue in Tomcat?
>>>>>
>>>>> Use DataSourceRealm :)
>>>>>
>>>>> Regards
>>>>>   Felix
>>>>>>
>>>>>>
>>>>>> I've googled and found
>>>>>>
>>>>>>
>>>>
>>>> http://stackoverflow.com/questions/24534286/strange-jdbcream-exception-occurs-on-tomcat
>>>>>>
>>>>>> but without any suggestions what to do.
>>>>>>
>>>>>> Thanks for any help.
>>>>>>
>
> ---------------------------------------------------------------------
> 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 Realm & exceptions

Posted by Felix Schumacher <fe...@internetallee.de>.
Am 19.02.2015 um 13:58 schrieb Leonid Rozenblyum:
> I'm sorry for the late response.
>
> 1. After deeper check I see our structure is NOT much more complex
> than standard Tomcat structure.
> Actually the significant difference is : user roles table has foreign
> key to id in users table (so we join by id not by username)
Maybe you could add a view to your database, so that it will do the join 
for you and you could use the normal DatasourceRealm instead.

Regards
Felix
>
> 2. Great news about fix in 8.0.19! We'll wait for it with impatience.
>
> On Fri, Feb 6, 2015 at 8:09 AM, Felix Schumacher
> <fe...@internetallee.de> wrote:
>>
>> Am 5. Februar 2015 22:21:38 MEZ, schrieb Leonid Rozenblyum <lr...@gmail.com>:
>>> Hello Felix!
>>> Thanks for the detail answer! Good suggestion about  DataSourceRealm!
>>> (I thought about this possibility but then I discovered that we have
>>> extended JDBCRealm to support some complex DB structure so maybe this
>>> switch to another Realm is not SO easy as it should be).
>> It would be a good idea to share what complex structure you need to support. Maybe it would be worth to extend the standard realms to support them as well.
>>
>> On the other hand the code of JDBCRealm and DataSourceRealm are quit similar, so it should be easy for you to port your code.
>>
>>> Is it a good idea to suggest reducing logging level inside the
>>> JDBCRealm if this is not an issue to worry about? E.g. not SEVERE but
>>> DEBUG or TRACE?
>> I fixed the error, it should be in tomcat 8.0.19.
>>
>> Felix
>>>
>>> On Thu, Feb 5, 2015 at 10:14 PM, Felix Schumacher
>>> <fe...@internetallee.de> wrote:
>>>> Hi Leonid,
>>>>
>>>> Am 05.02.2015 um 16:28 schrieb Leonid Rozenblyum:
>>>>> Hello!
>>>>>
>>>>> After upgrading from Tomcat7 to Tomcat8 we started facing
>>> exceptions:
>>>>> rg.apache.catalina.realm.JDBCRealm getPassword
>>>>> SEVERE: Exception performing authentication
>>>>> org.postgresql.util.PSQLException: This statement has been closed.
>>>>>
>>>>> They look like not giving any harm (?).
>>>> JDBCRealm will try again after it reports the error, so no real harm
>>> for
>>>> you.
>>>>
>>>> The exception gets thrown, because the PreparedStatement is used with
>>> a
>>>> try-with block, which closes the instance variable, which is reused
>>> later
>>>> (then obviously closed :( ).
>>>>> Could we do anything to avoid this? Is it some kind of
>>>>> misconfiguration at our side or some issue in Tomcat?
>>>> Use DataSourceRealm :)
>>>>
>>>> Regards
>>>>   Felix
>>>>>
>>>>> I've googled and found
>>>>>
>>>>>
>>> http://stackoverflow.com/questions/24534286/strange-jdbcream-exception-occurs-on-tomcat
>>>>> but without any suggestions what to do.
>>>>>
>>>>> Thanks for any help.
>>>>>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: JDBC Realm & exceptions

Posted by Leonid Rozenblyum <lr...@gmail.com>.
I'm sorry for the late response.

1. After deeper check I see our structure is NOT much more complex
than standard Tomcat structure.
Actually the significant difference is : user roles table has foreign
key to id in users table (so we join by id not by username)

2. Great news about fix in 8.0.19! We'll wait for it with impatience.

On Fri, Feb 6, 2015 at 8:09 AM, Felix Schumacher
<fe...@internetallee.de> wrote:
>
>
> Am 5. Februar 2015 22:21:38 MEZ, schrieb Leonid Rozenblyum <lr...@gmail.com>:
>>Hello Felix!
>>Thanks for the detail answer! Good suggestion about  DataSourceRealm!
>>(I thought about this possibility but then I discovered that we have
>>extended JDBCRealm to support some complex DB structure so maybe this
>>switch to another Realm is not SO easy as it should be).
>
> It would be a good idea to share what complex structure you need to support. Maybe it would be worth to extend the standard realms to support them as well.
>
> On the other hand the code of JDBCRealm and DataSourceRealm are quit similar, so it should be easy for you to port your code.
>
>>
>>Is it a good idea to suggest reducing logging level inside the
>>JDBCRealm if this is not an issue to worry about? E.g. not SEVERE but
>>DEBUG or TRACE?
> I fixed the error, it should be in tomcat 8.0.19.
>
> Felix
>>
>>
>>On Thu, Feb 5, 2015 at 10:14 PM, Felix Schumacher
>><fe...@internetallee.de> wrote:
>>> Hi Leonid,
>>>
>>> Am 05.02.2015 um 16:28 schrieb Leonid Rozenblyum:
>>>>
>>>> Hello!
>>>>
>>>> After upgrading from Tomcat7 to Tomcat8 we started facing
>>exceptions:
>>>>
>>>> rg.apache.catalina.realm.JDBCRealm getPassword
>>>> SEVERE: Exception performing authentication
>>>> org.postgresql.util.PSQLException: This statement has been closed.
>>>>
>>>> They look like not giving any harm (?).
>>>
>>> JDBCRealm will try again after it reports the error, so no real harm
>>for
>>> you.
>>>
>>> The exception gets thrown, because the PreparedStatement is used with
>>a
>>> try-with block, which closes the instance variable, which is reused
>>later
>>> (then obviously closed :( ).
>>>>
>>>> Could we do anything to avoid this? Is it some kind of
>>>> misconfiguration at our side or some issue in Tomcat?
>>>
>>> Use DataSourceRealm :)
>>>
>>> Regards
>>>  Felix
>>>>
>>>>
>>>> I've googled and found
>>>>
>>>>
>>http://stackoverflow.com/questions/24534286/strange-jdbcream-exception-occurs-on-tomcat
>>>>
>>>> but without any suggestions what to do.
>>>>
>>>> Thanks for any help.
>>>>
>>>>
>>---------------------------------------------------------------------
>>>> 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
>
>
> ---------------------------------------------------------------------
> 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 Realm & exceptions

Posted by Felix Schumacher <fe...@internetallee.de>.

Am 5. Februar 2015 22:21:38 MEZ, schrieb Leonid Rozenblyum <lr...@gmail.com>:
>Hello Felix!
>Thanks for the detail answer! Good suggestion about  DataSourceRealm!
>(I thought about this possibility but then I discovered that we have
>extended JDBCRealm to support some complex DB structure so maybe this
>switch to another Realm is not SO easy as it should be).

It would be a good idea to share what complex structure you need to support. Maybe it would be worth to extend the standard realms to support them as well.

On the other hand the code of JDBCRealm and DataSourceRealm are quit similar, so it should be easy for you to port your code. 

>
>Is it a good idea to suggest reducing logging level inside the
>JDBCRealm if this is not an issue to worry about? E.g. not SEVERE but
>DEBUG or TRACE?
I fixed the error, it should be in tomcat 8.0.19.

Felix
>
>
>On Thu, Feb 5, 2015 at 10:14 PM, Felix Schumacher
><fe...@internetallee.de> wrote:
>> Hi Leonid,
>>
>> Am 05.02.2015 um 16:28 schrieb Leonid Rozenblyum:
>>>
>>> Hello!
>>>
>>> After upgrading from Tomcat7 to Tomcat8 we started facing
>exceptions:
>>>
>>> rg.apache.catalina.realm.JDBCRealm getPassword
>>> SEVERE: Exception performing authentication
>>> org.postgresql.util.PSQLException: This statement has been closed.
>>>
>>> They look like not giving any harm (?).
>>
>> JDBCRealm will try again after it reports the error, so no real harm
>for
>> you.
>>
>> The exception gets thrown, because the PreparedStatement is used with
>a
>> try-with block, which closes the instance variable, which is reused
>later
>> (then obviously closed :( ).
>>>
>>> Could we do anything to avoid this? Is it some kind of
>>> misconfiguration at our side or some issue in Tomcat?
>>
>> Use DataSourceRealm :)
>>
>> Regards
>>  Felix
>>>
>>>
>>> I've googled and found
>>>
>>>
>http://stackoverflow.com/questions/24534286/strange-jdbcream-exception-occurs-on-tomcat
>>>
>>> but without any suggestions what to do.
>>>
>>> Thanks for any help.
>>>
>>>
>---------------------------------------------------------------------
>>> 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


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: JDBC Realm & exceptions

Posted by Leonid Rozenblyum <lr...@gmail.com>.
Hello Felix!
Thanks for the detail answer! Good suggestion about  DataSourceRealm!
(I thought about this possibility but then I discovered that we have
extended JDBCRealm to support some complex DB structure so maybe this
switch to another Realm is not SO easy as it should be).

Is it a good idea to suggest reducing logging level inside the
JDBCRealm if this is not an issue to worry about? E.g. not SEVERE but
DEBUG or TRACE?


On Thu, Feb 5, 2015 at 10:14 PM, Felix Schumacher
<fe...@internetallee.de> wrote:
> Hi Leonid,
>
> Am 05.02.2015 um 16:28 schrieb Leonid Rozenblyum:
>>
>> Hello!
>>
>> After upgrading from Tomcat7 to Tomcat8 we started facing exceptions:
>>
>> rg.apache.catalina.realm.JDBCRealm getPassword
>> SEVERE: Exception performing authentication
>> org.postgresql.util.PSQLException: This statement has been closed.
>>
>> They look like not giving any harm (?).
>
> JDBCRealm will try again after it reports the error, so no real harm for
> you.
>
> The exception gets thrown, because the PreparedStatement is used with a
> try-with block, which closes the instance variable, which is reused later
> (then obviously closed :( ).
>>
>> Could we do anything to avoid this? Is it some kind of
>> misconfiguration at our side or some issue in Tomcat?
>
> Use DataSourceRealm :)
>
> Regards
>  Felix
>>
>>
>> I've googled and found
>>
>> http://stackoverflow.com/questions/24534286/strange-jdbcream-exception-occurs-on-tomcat
>>
>> but without any suggestions what to do.
>>
>> Thanks for any help.
>>
>> ---------------------------------------------------------------------
>> 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 Realm & exceptions

Posted by Felix Schumacher <fe...@internetallee.de>.
Hi Leonid,

Am 05.02.2015 um 16:28 schrieb Leonid Rozenblyum:
> Hello!
>
> After upgrading from Tomcat7 to Tomcat8 we started facing exceptions:
>
> rg.apache.catalina.realm.JDBCRealm getPassword
> SEVERE: Exception performing authentication
> org.postgresql.util.PSQLException: This statement has been closed.
>
> They look like not giving any harm (?).
JDBCRealm will try again after it reports the error, so no real harm for 
you.

The exception gets thrown, because the PreparedStatement is used with a 
try-with block, which closes the instance variable, which is reused 
later (then obviously closed :( ).
> Could we do anything to avoid this? Is it some kind of
> misconfiguration at our side or some issue in Tomcat?
Use DataSourceRealm :)

Regards
  Felix
>
> I've googled and found
> http://stackoverflow.com/questions/24534286/strange-jdbcream-exception-occurs-on-tomcat
>
> but without any suggestions what to do.
>
> Thanks for any help.
>
> ---------------------------------------------------------------------
> 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