|
View:
New views
2 Messages
—
Rating Filter:
Alert me
|
|
|
Pool de Conexão: TomcatBom dia, colegas.
Não estou conseguindo retornar uma conexão com a minha Base de Dados pelo código abaixo: public static void main(String[] args) throws NamingException, SQLException { Context initContext = new InitialContext(); Context envContext = (Context)initContext.lookup("java:/comp/env/"); DataSource ds = (DataSource)envContext.lookup("jdbc/ConexaoIntercambio"); OracleConnection conexao = (OracleConnection) ds.getConnection(); } Os meus arquivos context.xml e web.xml estão devidamente configurados. Consigo acessar esta mesma base por exemplo web que inseri. No código acima, o erro ocorre na linha: Context envContext = (Context)initContext.lookup("java:/comp/env/"); A exception que ocorre: Exception in thread "main" javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial at javax.naming.spi.NamingManager.getInitialContext(Unknown Source) at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source) at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source) at javax.naming.InitialContext.lookup(Unknown Source) at conexao.Conexao.main(Conexao.java:22) Alguma dica? Abraço a todos. -- http://georgefernandesmaia.wordpress.com George Fernandes Maia João Pessoa - PB --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site do grupo: http://pbjug.org/ Para sair da lista, envie um e-mail para pbjug-unsubscribe@...
|
|
|
Re: Pool de Conexão: TomcatConfiguração: Para conectar sua aplicação à base de dados utilizando pool de
conexões do Tomcat, primeiro é necessário configurar um arquivo localizado na
pasta META-INF de sua aplicação, o context.xml (ver Figura 1, em anexo). É neste arquivo xml que, geralmente, configuramos a url de nossa aplicação na web. Somando a esta funcionalidade, este xml pode também ser utilizado para configuração de nossa base de dados, como número de conexões (a serem gerenciadas pelo pool do tomcat) disponíveis, senha, login e url da nossa base de dados.
Exemplo( context.xml ): <?xml version="1.0" encoding="UTF-8"?> <Context antiJARLocking="false" antiResourceLocking="false" path="/sinples" privileged="true"> <Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" maxActive="100" maxIdle="30" maxWait="10000" name=" jdbc/nomeAplicao " password="12345678" type="javax.sql.DataSource" url="jdbc:oracle:thin:@pb1:1521:adm" username="SINPLES"/> </Context>
Adicionando o Driver do Banco:
Não é necessário adicionar o Driver da Base no classPaph de sua aplicação. Entretanto, é necessário copiar o “.jar” do seu BD no pasta lib do Tomcat (ver Figura 2 em anexo). Conectando a base de Dados (Classe: Conexao.java):
Responsabilidade: Realizar a conexão com sua base de dados, utilizando as definições cingiguradas no context.xml e o driver copiado para pasta lib do Tomcat.
package br.empresa.bd; import java.sql.*; import java.util.*; import javax.naming.*; public class Conexao {
protected static DataSource dataSource; public Conexao() throws Exception { if (dataSource == null) { try { InitialContext ic = new InitialContext(); Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); dataSource = (DataSource) envCtx.lookup("jdbc/nomeAplicao");
/* Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); dataSource = (DataSource) envCtx.lookup("jdbc/core"); */
} catch (NamingException ex) { System.out.println(ex.getMessage()); throw new Exception(ex.getMessage()); } } } public Connection getConnection() throws SQLException { Connection conn = null; try { conn = dataSource.getConnection(); } catch (SQLException e) { throw e; } return conn; } public void closeConnection( Connection conn, PreparedStatement stmt, ResultSet rs) { if (rs != null) { try { rs.close(); } catch (SQLException e) { } } if (stmt != null) { try { stmt.close(); } catch (SQLException e) { } } if (conn != null) { try { conn.close(); } catch (SQLException e) { } } } } 2009/10/21 George Maia <georgeppp@...> Bom dia, colegas. -- @Atenciosamente, -- Marcos Eduardo da Silva Santos Systems Analyst and Java Programmer Master's Student in Network and Distributed System State University of Ceará (Brazil) Bachelor in Computer Science (Brazil) Fortaleza, Ceará State, Brazil Mobile: +55 (85) 91699547 CAMPANHA POR UMA INTERNET SEGURA Adote esta idéia ao enviar/reenviar/encaminhar uma mensagem: 1) Apague o meu e-mail e o meu nome. 2) Apague também os endereços dos amigos antes de reenviar. 3) Envie ou encaminhe como cópia oculta (Cco ou Bcc) aos seus destinatários. Agindo sempre assim, dificultaremos a disseminação de vírus e spams. --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site do grupo: http://pbjug.org/ Para sair da lista, envie um e-mail para pbjug-unsubscribe@...
|
| Free embeddable forum powered by Nabble | Forum Help |