我無法使用以下代碼段遠程連接Oracle 11數據庫。但是,如果我嘗試連接安裝在我的機器上的Oracle 9數據庫,相同的代碼工作正常。什麼不見了 ?通過JDBC瘦驅動程序連接Oracle 11g時出現問題(Domino Java)
(我沒有得到任何錯誤,Lotus Notes中掛起)
import lotus.domino.*;
import java.sql.*;
import oracle.jdbc.*;
public class JavaAgent extends AgentBase {
public void NotesMain() {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
Database db = agentContext.getCurrentDatabase();
//Calling connection method
Connection conn= getOracleConnection(db);
if(conn!=null){
System.out.println("Connected..");
}
else {
System.out.println("There is a problem in connecting database..");
System.exit(0);
}
} catch(Exception e) {
e.printStackTrace();
System.exit(0);
}
}
private static Connection getOracleConnection(Database db) throws Exception {
// Register driver
DriverManager.registerDriver (new oracle.jdbc.OracleDriver());
//Retrieving connection string from profile document.
String host = "SPRPRG020.int.server.com";
String ip = "1521";
String user = "system";
String password = "password";
String sid = "XE";
String url="jdbc:oracle:thin:@"+host+":"+ip+":"+sid;
return DriverManager.getConnection(url, user, password);
}
}
如果您在調試器中逐步執行代碼,您是否碰巧遇到執行掛起該線程的行? – 2010-08-26 09:51:53
@Vineet,無法這樣做,代碼凍結Lotus Notes。 – Rishi 2010-08-26 09:58:37
此外,我認爲使用瘦驅動程序連接遠程Oracle數據庫沒有任何問題。我懷疑連接字符串中的語法錯誤。 – Rishi 2010-08-26 10:02:58