Erro: Could not find datasource: java:comp/env/jdbc/oobjCentralDs - Como resolver?

Problema

Quando o serviço Tomcat, usado pela Aplicação Oobj, é iniciado e o mesmo não possui configurado a conexão com o Banco de Dados é mostrado o erro abaixo nos logs do serviço:

[localhost-startStop-1] 0906 08:38:03,927 INFO  NamingHelper - JNDI InitialContext properties:{}
[localhost-startStop-1] 0906 08:38:03,928 ERROR ceConnectionProvider - Could not find datasource: java:comp/env/jdbc/oobjCentralDs
javax.naming.NameNotFoundException: Name [jdbc/oobjCentralDs] is not bound in this Context. Unable to find [jdbc].
	at org.apache.naming.NamingContext.lookup(NamingContext.java:819)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:167)
	at org.apache.naming.factory.ResourceLinkFactory.getObjectInstance(ResourceLinkFactory.java:97)
	at javax.naming.spi.NamingManager.getObjectInstance(Unknown Source)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:842)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:830)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:830)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:153)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:830)
	at org.apache.naming.NamingContext.lookup(NamingContext.java:167)
	at org.apache.naming.SelectorContext.lookup(SelectorContext.java:156)
	at javax.naming.InitialContext.lookup(Unknown Source)
	at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:75)
	at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:137)
	at org.hibernate.ejb.InjectionSettingsFactory.createConnectionProvider(InjectionSettingsFactory.java:29)
	at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:89)
	at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2101)
	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1325)
	at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:669)
	at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:126)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
	at org.utils.core.dao.jpa.jse.JpaDaoImplJse.createEntityManagerFactory(JpaDaoImplJse.java:59)
	at org.utils.core.dao.jpa.jse.support.EntityManagerFactoryListener.contextInitialized(EntityManagerFactoryListener.java:36)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5068)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5584)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1259)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1998)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

 

Normalmente, esse problema ocorre quando há reinstalação do Tomcat, e algumas configurações são perdidas.

 

Solução/Procedimento

Para corrigir esse problema deverá ser editado o arquivo server.xml salvo no caminho (padrão) >> C:\Oobj\Aplicativos\Tomcat7\conf\server.xml. Para isso, abra o arquivo com um editor de texto (recomendamos o NotePad++).

 

Siga os passos para corrigir o problema:

1 - Localize seguinte o trecho dentro do arquivo server.xml:

<Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />

 

A depender do Banco de Dados usado, a string de conexão pode mudar um pouco. Veja abaixo um exemplo para cada um dos Bancos de Dados que são compatíveis com a Aplicação Oobj.

 

2 - Inseria a string de conexão de acordo com o seu Banco de Dados:

  • Para Banco de Dados PostgreSQL:
<Resource acquireIncrement="5" acquireRetryAttempts="30" acquireRetryDelay="1000" 
	auth="Container" driverClass="org.postgresql.Driver" 
	factory="org.apache.naming.factory.BeanFactory" jdbcUrl="jdbc:postgresql://127.0.0.1/oobj_nfe_central" 
	maxIdleTime="240" maxPoolSize="20" minPoolSize="5"  name="jdbc/oobjCentralDs" 
	password="oobj.postgres" type="com.mchange.v2.c3p0.ComboPooledDataSource" user="postgres"/>

 

  • Para Banco de Dados SQL Server:
<Resource acquireIncrement="5" acquireRetryAttempts="30" acquireRetryDelay="1000" 
	auth="Container" driverClass="net.sourceforge.jtds.jdbc.Driver" 
	factory="org.apache.naming.factory.BeanFactory" jdbcUrl="jdbc:jtds:sqlserver://10.102.20.126:1433/NFE" 
	maxIdleTime="240" maxPoolSize="20" minPoolSize="5" name="jdbc/oobjCentralDs" 
	password="su_nfe" type="com.mchange.v2.c3p0.ComboPooledDataSource" user="u_nfe"/>

 

  • Para Banco de Dados Oracle:
<Resource acquireIncrement="5" acquireRetryAttempts="30" acquireRetryDelay="1000" 
	auth="Container" driverClass="oracle.jdbc.driver.OracleDriver" 
	factory="org.apache.naming.factory.BeanFactory" jdbcUrl="jdbc:oracle:thin:@//192.168.0.121:1521/orcl" 
	maxIdleTime="240" maxPoolSize="150" minPoolSize="5" name="jdbc/oobjCentralDs" 
	password="teste" type="com.mchange.v2.c3p0.ComboPooledDataSource" user="teste"/>

 

3 - Após adicionar a string de conexão com o banco de dados, deverá ficar como no exemplo abaixo:

<GlobalNamingResources>
	<!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users
    -->
	<Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />

	<!-- PostgreSQL -->
	<Resource acquireIncrement="3" acquireRetryAttempts="30" acquireRetryDelay="1000" 
    		auth="Container" driverClass="org.postgresql.Driver" 
    		factory="org.apache.naming.factory.BeanFactory" jdbcUrl="jdbc:postgresql://localhost:5432/oobj_nfe_central" 
    		maxIdleTime="240" maxPoolSize="100" minPoolSize="5" name="jdbc/oobjCentralDs" 
    		password="oobj.postgres" type="com.mchange.v2.c3p0.ComboPooledDataSource" user="postgres"/>
</GlobalNamingResources>

 

4 - Salve o arquivo server.xml e reinicie o Serviço Apache Tomcat 7

 

Referência

Sem referências.

0 (0)
Avaliação do Artigo (Nenhum voto)
Avaliar esse artigo
Anexos
Não há anexos para este artigo.
Artigos Relacionados RSS Feed
Como criar um Novo Usuário no Monitor Oobj
Visualizado 505 vezes desde 22/02/2018
Como Alterar a Senha no Monitor Oobj
Visualizado 391 vezes desde 23/02/2018
Configurar serviços Oobj para acessar Certificado A3
Visualizado 660 vezes desde 23/02/2018
Info do Sistema no Monitor Oobj
Visualizado 283 vezes desde 12/04/2018
Imprimir Documento por rota no Monitor Oobj
Visualizado 258 vezes desde 22/06/2018
Como configurar um Certificado A1 no Monitor Oobj?
Visualizado 1426 vezes desde 05/12/2017
Download Público no Monitor Oobj
Visualizado 263 vezes desde 02/08/2018
Informações do Sistema - Como conferir a versão do Monitor Oobj?
Visualizado 261 vezes desde 12/09/2018
Editar Usuário no Monitor Oobj
Visualizado 197 vezes desde 25/09/2018
Como inativar um usuário no Monitor Oobj?
Visualizado 175 vezes desde 25/09/2018
Comentários
Nome
Email
Código de Segurança Security Code
Não há comentários para este artigo. Seja o primeiro a postar um comentário.