14864 - Connection pool exhausted (CSM Center Console)
Problema: Descrição: Ao tentar fazer login (conectar) na CSM Center Console é apresentada a seguinte mensagem de erro:
Erro ao carregar o objeto de acesso ao SGU. Verifique se as propriedades de conexão com o banco de dados estão configuradas corretamente no Senior Config Center, na seção Aplicativos Java. Detalhe: com.senior.dbc.impl.connection.NoSuchConnectionException: Connection pool exhausted.
No log 'server.log' apresenta a mensagem:
(...)
javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=22;_ThreadName=Thread-2;|08:49:48,474 ERROR [http-thread-pool-80(1)][JdbcConnectionManager:110] Error validating JDBC connection.
java.lang.AbstractMethodError: com.microsoft.sqlserver.jdbc.SQLServerConnection.isValid(I)Z
at com.senior.dbc.impl.connection.JdbcConnectionManager.validateConnection(JdbcConnectionManager.java:230)
at com.senior.dbc.impl.connection.JdbcConnectionManager.access$0(JdbcConnectionManager.java:228)
(...)
Quando ocorre / onde se aplica: Ao tentar conectar na CSM Center Console.
Solução: Para solucionar esta situação deve-se realizar as seguintes verificações:
1) Não pode existir mais de arquivo 'ojdbc*' e 'sqljdbc*' na pasta LIB do domínio da CSM Center (../glassfish/domains/csmcenter/lib), verificar inclusive a pasta 'ext' dentro da 'lib'. Dessa forma, deve-se remover o arquivo 'ojdbc' e 'sqljdbc' incorreto e deixar somente o arquivo JDBC que é compatível com a versão em questão; (Observação: Recomendamos não excluir nem renomear o arquivo 'ojdbc' mais antigo, apenas mova-o (recorte) para uma pasta fora do domínio da CSM Center.)
2) Deve-se verificar se o arquivo 'jdbc' é compatível com a versão do sistema Senior, exemplo: 'ojdbc6' e 'sqljdbc4' são compatíveis com as versões 5.8.6 ou superior da CSM Center. (Caso não tenha esse conhecimento peça auxílio para equipe de Suporte da Senior)
3) Verificar também o seguinte item da nossa Documentação: http://documentacao.senior.com.br/fad/5.8.7/index.htm#sistemas/gestao_acesso/instalacao/gestao_de_acesso_e_seguranca/pos_atualizacao.htm. *** Importante: Esse procedimento é feito de forma automática a partir da versão 5.8.7 ou superior. ***
4) Verificar se não existe um arquivo 'jdbc' dentro da pasta de instalação do Java. (Exemplo: C:/Program Files/Java/jre7/lib/ext)
IMPORTANTE: A interpretação do LOG do domínio da CSM Center (Exemplo: ../glassfish/domains/csmcenter/logs) é fundamental para se ter conhecimento de onde a CSM Center busca o arquivo JDBC, pois anterior a mensagem de erro supracitada no log, é apresentado o caminho do arquivo JDBC utilizado. Exemplo da mensagem de log abaixo:
[#|2016-08-10T08:34:48.308-0300|INFO|glassfish3.1.2|com.senior.dbc.impl.connection.AbstractConnectionProvider|_ThreadID=90;_ThreadName=Thread-2;|JDBC driver class com.microsoft.sqlserver.jdbc.SQLServerDriver loaded from file:/C:/glassfish3/glassfish/domains/csmcenter/lib/sqljdbc4.jar.|#]
Após as verificações supracitadas deve-se realizar os ajustes necessários e posteriormente reiniciar o serviço/domínio da CSM Center.
Erro ao carregar o objeto de acesso ao SGU. Verifique se as propriedades de conexão com o banco de dados estão configuradas corretamente no Senior Config Center, na seção Aplicativos Java. Detalhe: com.senior.dbc.impl.connection.NoSuchConnectionException: Connection pool exhausted.
No log 'server.log' apresenta a mensagem:
(...)
javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=22;_ThreadName=Thread-2;|08:49:48,474 ERROR [http-thread-pool-80(1)][JdbcConnectionManager:110] Error validating JDBC connection.
java.lang.AbstractMethodError: com.microsoft.sqlserver.jdbc.SQLServerConnection.isValid(I)Z
at com.senior.dbc.impl.connection.JdbcConnectionManager.validateConnection(JdbcConnectionManager.java:230)
at com.senior.dbc.impl.connection.JdbcConnectionManager.access$0(JdbcConnectionManager.java:228)
(...)
Quando ocorre / onde se aplica: Ao tentar conectar na CSM Center Console.
Solução: Para solucionar esta situação deve-se realizar as seguintes verificações:
1) Não pode existir mais de arquivo 'ojdbc*' e 'sqljdbc*' na pasta LIB do domínio da CSM Center (../glassfish/domains/csmcenter/lib), verificar inclusive a pasta 'ext' dentro da 'lib'. Dessa forma, deve-se remover o arquivo 'ojdbc' e 'sqljdbc' incorreto e deixar somente o arquivo JDBC que é compatível com a versão em questão; (Observação: Recomendamos não excluir nem renomear o arquivo 'ojdbc' mais antigo, apenas mova-o (recorte) para uma pasta fora do domínio da CSM Center.)
2) Deve-se verificar se o arquivo 'jdbc' é compatível com a versão do sistema Senior, exemplo: 'ojdbc6' e 'sqljdbc4' são compatíveis com as versões 5.8.6 ou superior da CSM Center. (Caso não tenha esse conhecimento peça auxílio para equipe de Suporte da Senior)
3) Verificar também o seguinte item da nossa Documentação: http://documentacao.senior.com.br/fad/5.8.7/index.htm#sistemas/gestao_acesso/instalacao/gestao_de_acesso_e_seguranca/pos_atualizacao.htm. *** Importante: Esse procedimento é feito de forma automática a partir da versão 5.8.7 ou superior. ***
4) Verificar se não existe um arquivo 'jdbc' dentro da pasta de instalação do Java. (Exemplo: C:/Program Files/Java/jre7/lib/ext)
IMPORTANTE: A interpretação do LOG do domínio da CSM Center (Exemplo: ../glassfish/domains/csmcenter/logs) é fundamental para se ter conhecimento de onde a CSM Center busca o arquivo JDBC, pois anterior a mensagem de erro supracitada no log, é apresentado o caminho do arquivo JDBC utilizado. Exemplo da mensagem de log abaixo:
[#|2016-08-10T08:34:48.308-0300|INFO|glassfish3.1.2|com.senior.dbc.impl.connection.AbstractConnectionProvider|_ThreadID=90;_ThreadName=Thread-2;|JDBC driver class com.microsoft.sqlserver.jdbc.SQLServerDriver loaded from file:/C:/glassfish3/glassfish/domains/csmcenter/lib/sqljdbc4.jar.|#]
Após as verificações supracitadas deve-se realizar os ajustes necessários e posteriormente reiniciar o serviço/domínio da CSM Center.