title: Oracle JDBC Connection refused (only from jdbc code)
body: <p>I'm getting <code>Connection refused</code> when I try to connect to a remote Oracle database.</p>
  
  <p>I can successfully telnet to the same IP address and port and I can even connect via SQL Developer or IntelliJ Idea's <code>Database</code> tab using the same credentials, but when I try it from my code I get the exception.</p>
  
  <p>Note:
  I'm Using Ubuntu, IntelliJ IDEA, Tomcat 7, Oracle JDBC Driver v7.0.</p>
  
  <p>The following standalone code throws the same exception:</p>
  
  <pre><code>public static void main(String[] argv) {
  
      System.out.println("-------- Oracle JDBC Connection Testing ------");
  
      try {
  
          Class.forName("oracle.jdbc.driver.OracleDriver");
      } catch (ClassNotFoundException e) {
          System.out.println("Where is your Oracle JDBC Driver?");
          e.printStackTrace();
          return;
      }
  
      System.out.println("Oracle JDBC Driver Registered!");
  
      Connection connection = null;
  
      try {
          connection = DriverManager.getConnection(
                  "jdbc:oracle:thin:10.1.1.27:1521:xe", "user", "password");
      } catch (SQLException e) {
          System.out.println("Connection Failed! Check output console");
          e.printStackTrace();
          return;
      }
  
      if (connection != null) {
          System.out.println("You made it, take control your database now!");
      } else {
          System.out.println("Failed to make connection!");
      }
  }
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>Oracle JDBC Driver Registered!
  
  java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
      at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:673)
      at oracle.jdbc.driver.PhysicalConnection.&lt;init&gt;(PhysicalConnection.java:715)
      at oracle.jdbc.driver.T4CConnection.&lt;init&gt;(T4CConnection.java:385)
      at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:30)
      at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:564)
      at java.sql.DriverManager.getConnection(DriverManager.java:571)
      at java.sql.DriverManager.getConnection(DriverManager.java:215)
      at com.greenmile.web.DBConnectionTest.main(DBConnectionTest.java:34)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
  
  Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection
      at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:445)
      at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:464)
      at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:594)
      at oracle.net.ns.NSProtocol.connect(NSProtocol.java:229)
      at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1360)
      at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:486)
      ... 12 more
  
  Caused by: java.net.ConnectException: Connection refused
      at java.net.PlainSocketImpl.socketConnect(Native Method)
      at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
      at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
      at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
      at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
      at java.net.Socket.connect(Socket.java:579)
      at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:162)
      at oracle.net.nt.ConnOption.connect(ConnOption.java:133)
      at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:411)
      ... 17 more
  
  Connection Failed! Check output console
  </code></pre>