Проблема с подключением Oracle 11g через тонкий драйвер JDBC (Domino Java)

Я не могу удаленно подключиться к базе данных Oracle 11, используя следующий фрагмент кода. Однако тот же код отлично работает, если я пытаюсь подключить базу данных Oracle 9, установленную на моем компьютере. Чего не хватает ?

(Я не получаю никаких ошибок, 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);
  }
}

person Ris    schedule 26.08.2010    source источник
comment
Если вы пройдёте код в отладчике, не встретите ли вы случайно строку, выполнение которой зависает в потоке?   -  person Vineet Reynolds    schedule 26.08.2010
comment
@Vineet, не могу этого сделать, код зависает в Lotus Notes.   -  person Ris    schedule 26.08.2010
comment
Кроме того, я не предполагаю ничего плохого в использовании тонкого драйвера для подключения к удаленной базе данных Oracle. Я подозреваю что-то синтаксически неправильное в моей строке подключения.   -  person Ris    schedule 26.08.2010
comment
Зависание может быть связано с ожиданием ответа сети. Можете ли вы пропинговать SPRPRG020.int.server.com? Если да, можете ли вы подключиться по телнету к SPRPRG020.int.server.com через порт 1521? В качестве альтернативы вы можете подключиться через что-то вроде SQL * Plus в мгновенном клиенте?   -  person Gary Myers    schedule 27.08.2010


Ответы (2)


ОК, ребята, теперь я могу подключиться. Вот все возможные строки подключения, которые я пробовал, и все работает,

1- "jdbc:oracle:thin:@server.cgg.com:1569:ServiceName"

2- "jdbc:oracle:thin:@//server.cgg.com:1569/ServiceName"

3- "jdbc:oracle:thin:@server.cgg.com:1569/ServiceName"
person Ris    schedule 27.08.2010

Используйте это, синтаксис URL-адреса JDBC для oracle 11 g изменился

<property name="url" value="jdbc:oracle:thin:@//localhost:1521/service_name" />
person subhasish sahu    schedule 25.04.2013