Ola a todos!
Estou iniciando meus estudos com java usando Windows 8 e Eclipse
Não consigo conectar no oracle com o eclipse.
Retorna-me esse erro!
java.sql.SQLException: Exceção de E/S: The Network Adapter could not establish the connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
.
.
.
.
Classe que uso
public Connection getConnection() throws ClassNotFoundException, SQLException{
Class.forName("oracle.jdbc.driver.OracleDriver");
return DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.4:1521/KAL","????","????");
}
OBS:
O que acho estranho é que:
passando essa mesma classe no Netbeans, funciona! conecta sem problemas.
Já faz uns dois dias que estou batendo cabeça com isso
Alguém usa windows 8 com o eclipse?
substitua isso:
Class.forName("oracle.jdbc.driver.OracleDriver");
por isso:
Class.forName("oracle.jdbc.OracleDriver");
e vê o que é que dá.
e isso:
jdbc:oracle:thin:@192.168.1.4:1521/KAL
por isso:
jdbc:oracle:thin:@192.168.1.4:1521:KAL
novato25
obrigado por me ajudar!
mas fiz o que vc. indicou e nao resolveu!
como mencionei
instalei o Netbeans para testar a conexao e funcionou! mas quero fazer teste com o Eclipse tambem
o seu sistema é web? se for, qual servidor você utiliza?
Cara, java é java em qualquer IDE.
Da uma olhada se não tem conexões abertas no banco, vc pode ter se esquecido de fecha-la e esta tomando todo o seu pool de conexões.
freakazoid
se fosse problemas de conexões aberta, não acessaria com o Netbeans.
acho que é algum problema com o Eclipse e Windows 8 na parte de conexão.
não estou conseguindo resolver isso, ja pesquisei na net e fiz varias
alterações conforme cada publicação.
[quote=jgenario]freakazoid
se fosse problemas de conexões aberta, não acessaria com o Netbeans.
acho que é algum problema com o Eclipse e Windows 8 na parte de conexão.
não estou conseguindo resolver isso, ja pesquisei na net e fiz varias
alterações conforme cada publicação.[/quote]
Ok, vc pegou o projeto funcionando no NetBeans, exportou, depois importou no Eclipse.
Vc continua acessando normalmente pelo NetBeans? Se sim, poste aqui o strack trace completo.
Abs!
freakazoid
estou iniciando os estudo e comecei a fazer os teste no eclipse e me retornou o erro
ai fiz o mesmo processo no Netbeans e funcionou, entao me perguntei porque no eclipse nao funciona
Olha o codigo todo!
[code]import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ConexaoUtil {
private static ConexaoUtil conexaoUtil;
public static ConexaoUtil getInstance(){
if (conexaoUtil == null){
conexaoUtil = new ConexaoUtil();
}
return conexaoUtil;
}
public Connection getConnection() throws ClassNotFoundException, SQLException{
Class.forName("oracle.jdbc.OracleDriver");
return DriverManager.getConnection("jdbc:oracle:thin:@192.100.1.4:1521:kal","????","????");
}
public static void main(String[] args) {
try {
System.out.println(getInstance().getConnection());
System.out.println("conectado!");
} catch (Exception e) {
e.printStackTrace();
}
}
}[/code]
Em outras palavras, copie e cole aqui todo o erro que aparece na sua console.
Outra coisa, no seu teste:
vc abre a conexão e deixa ela aberta. Existem algumas formas de aproveitar uma conexão aberta, porem não vem ao caso agora.
o que esta acontecendo é que cada vez que vc quer uma conexão cria uma nova e não fecha as que estão abertas.
Seu método para obter a conexão não esta errado, porem eu prefiro assim:
public static Connection getConexao() {
Connection conn = null;
try {
Class.forName("oracle.jdbc.OracleDriver");
conn = DriverManager.getConnection( "url", "usuario", "senha");
return conn;
} catch (ClassNotFoundException erroClass) {
System.out.println("Classe Driver JDBC não foi localizado, erro = "
+ erroClass);
} catch (SQLException erroSQL) {
System.out.println("Erro de conexão com o Banco de dados, erro = "
+ erroSQL);
}
return conn;
}
java.sql.SQLException: Exceção de E/S: The Network Adapter could not establish the connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:441)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at ConexaoUtil.getConnection(ConexaoUtil.java:19)
at ConexaoUtil.main(ConexaoUtil.java:24)
[quote=jgenario]java.sql.SQLException: Exceção de E/S: The Network Adapter could not establish the connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:441)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at ConexaoUtil.getConnection(ConexaoUtil.java:19)
at ConexaoUtil.main(ConexaoUtil.java:24)
[/quote]
No prompt do DOS digite TNSPING e confirme os dados do servidor e a porta.
Esse comando TNSPING vai consultar um serviço no Oracle lhe retornar se o banco esta acessível ou não.
jgenario, este teste mata 2 coelhos com uma majadada só, pois vamos confirmar que o banco esta ok e validamos os dados da sua string de conexão.
Abs!
Ola!
freakazoid
Desculpe a demora!
fiz o teste com o tnsping e responde ok.
acho que é problema com o eclipse - alguma coisa com o windows 8
pois fiz o teste com o mysql e deu o mesmo erro.
já qdo. faço o teste com o Netbeans tudo funciona!
Poh que chato!! Quando resolver poste aqui a solução.
Abs!
freakazoid!
Obrigado por me ajudar.
Meu ambiente de trabalho é o seguinte
Windows 8
Eclipse IDE Juno 64bits
Banco Oracle 11G e Mysql para teste
Solução
Iniciei um novo projeto informando a JRE 6 - conectou no Oracle e Mysql.
Se inicio um projeto usando a JRE 7 da erro: Exception The Network Adapter could not establish the connection.
Bom resolveu meu problema usando a JRE6.
não sei explicar porque.
se alguem quiser explicar o que tenho que fazer para usar a JRE 7 Agradeço.