我有一個GWT應用程序,通過集成Jetty的SuperDevMode在本地計算機上運行。該應用程序工作正常,但我需要連接到Oracle數據庫。 我做了以下操作:將GWT應用程序連接到Oracle DB帶來'無效的用戶名/密碼;登錄被拒絕' - 登錄與QuantumDB一起使用?
public static Connection getConnection() throws ConfigurationException {
try {
if (conn == null) {
createConnection();
}
return conn;
} catch (SQLException e) {
System.out.println();
throw new ConfigurationException(e);
}
}
private static void createConnection() throws ConfigurationException, SQLException {
try {
String url = ConfigHelper.getJdbcUrl();
String user = ConfigHelper.getJdbcUser();
String password = ConfigHelper.getJdbcPassword();
String schema = ConfigHelper.getJdbcSchema();
String driverName = ConfigHelper.getJdbcDriver();
Driver driver = (Driver) Class.forName(driverName).newInstance();
DriverManager.registerDriver(driver);
conn = DriverManager.getConnection(url, user, password);
conn.setSchema(schema);
} catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
throw new ConfigurationException(e);
}
}
我嘗試創建連接;我有一個幫助器類「ConfigHelper」,它讀取一個包含所有信息的配置文件。 當我在DebugMode中啓動應用程序時,我可以看到我從配置文件中獲得了正確的值。 但是我得到這個堆棧跟蹤:
java.sql.SQLException: ORA-01017: invalid username/password; logon denied
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:389)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:382)
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:600)
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:445)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:450)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:380)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:760)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:401)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:546)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:236)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at de.axa.schadenreserveOnline.server.db.DBHelper.createConnection(DBHelper.java:51)
at de.axa.schadenreserveOnline.server.db.DBHelper.getConnection(DBHelper.java:32)
... 73 more
奇怪的是,如果我使用QuantumDB Eclipse插件與來自我的配置相同的數據連接到同一個Oracle數據庫文件,它的工作原理。
有什麼我錯過了創建連接? 我apreciate任何幫助提前
編輯 感謝: 使用ojdbc6 11.2.0.3 GWT 2.8.0