[resolvido][oracle] logon denied pelo java, mas conecta normalmente com os mesmos valores pelo toad

3 respostas
BrenoSalgado

pessoal, to com um problema no projeto lá do estágio, como eu disse no assunto
eu to tentando fazer a conexão pelo jdbc no java e, no try-catch do driverManager.getConnection() ele sempre cai no catch, deixando a connection nula

o erro que aparece é um ORA-(algum número que esqueci agora) dizendo que o Logon foi denied e que username e password não batem
porém quando conecto pelo TOAD com o mesmo usuário e senha não há erro nenhum…

alguém tem idéia do que pode ser isto?

3 Respostas

thiago.correa

coloca o código e o erro (bem detalhado que você está tendo!)

BrenoSalgado

tenho uma connection factory

public class ConnectionFactory {

	public static Connection getConnection() throws SQLException {
		try {
			Class.forName("oracle.jdbc.OracleDriver");
			return DriverManager.getConnection("jdbc:oracle:thin:@sv081.tst.gov.br:1521:DBDES01", "xxx", "xxx"); // <- nessa linha que o compilador indica erro
		} catch (ClassNotFoundException e) {
			throw new SQLException(e.getMessage());
		}
	}
	
}

um dao simples também

public class BuscaDAO {

	Connection connection;
	
	public BuscaDAO(){
		try {
			connection = ConnectionFactory.getConnection();
		} catch (SQLException e) {
			System.out.println("Ocorreu um erro na conexão com o banco de dados.");
			e.printStackTrace();
		}
	}

e ele nunca consegue conectar, vai sempre pro erro:

Ocorreu um erro na conexão com o banco de dados.
java.sql.SQLException: ORA-01017: invalid username/password; logon denied

	at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
	at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
	at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:277)
	at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
	at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:647)
	at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:308)
	at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:430)
	at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:151)
	at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
	at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:608)
	at java.sql.DriverManager.getConnection(DriverManager.java:582)
	at java.sql.DriverManager.getConnection(DriverManager.java:185)
	at dao.ConnectionFactory.getConnection(ConnectionFactory.java:12)
	at dao.BuscaDAO.<init>(BuscaDAO.java:14)
	at breno.BuscaAction.<init>(BuscaAction.java:14)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
	at java.lang.Class.newInstance0(Class.java:355)
	at java.lang.Class.newInstance(Class.java:308)
	at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:231)
	at org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:326)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:268)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Thread.java:619)
BrenoSalgado

Consegui resolver…

parece que é um trem muito estranho aqui…
o que rolou é que testei com outra senha e ele aceitou
e essa senha não entra pelo TOAD, mas conecta pelo java

então eu to com uma senha aqui que entra só no toad, e outra que entra só no java
coisa esquisita da porra…
enfim, agora posso continuar a trabalhar…
obrigado a todos

Criado 9 de setembro de 2009
Ultima resposta 10 de set. de 2009
Respostas 3
Participantes 2