title: SQLException caught Invalid column index
body: <p>Can anyone help me to solve this error: I tried different way to solve this error but could not get success. </p>
  
  <p>Here is a package and  procedure and a java file from which i am calling the procedure.
  I am trying to call procedure for the first time. I have never use procedures before
  so If someone can give me an idea what's wrong would be appreciated.    </p>
  
  <pre><code>  package.sql  
  
       create or replace package proj2 as  
       procedure show_students;  
       procedure show_courses;  
       end;  
       /  
  
  
       procedures.sql  
  
       set serveroutput on;  
       create or replace package body proj2 as  
           procedure show_courses is  
               cursor co1 is   
               select * from courses;  
               co1_rec co1%rowtype;  
           begin  
               if(not co1%isopen)then  
                   open co1;  
               end if;  
               fetch co1 into co1_rec;  
               while co1%found loop  
                   dbms_output.put_line(co1_rec.dept_code||','||co1_rec.course#||','||co1_rec.title);
  
                   fetch co1 into co1_rec;  
               end loop;  
               close co1;  
           end show_courses;     
       end;
  </code></pre>
  
  <p>mydemo2.java</p>
  
  <pre><code>import java.sql.*;  
  import oracle.jdbc.*;  
  import java.math.*;  
  import java.io.*;  
  import java.awt.*;  
  import oracle.jdbc.pool.OracleDataSource;  
  
  public class mydemo2 {  
  
     public static void main (String args []) throws SQLException {  
      try  
      {  
  
          //Connection to Oracle server  
          OracleDataSource ds = new oracle.jdbc.pool.OracleDataSource();  
          ds.setURL("jdbc:oracle:thin:@grouchoIII.cc.binghamton.edu:1521:ACAD111");  
          Connection conn = ds.getConnection("uname", "password");  
          OracleResultSet rs = null;  
  
  //      CallableStatement cs = conn.prepareCall("{call proj2.show_students}");  
          OracleCallableStatement cs = (OracleCallableStatement)conn.prepareCall("{call proj2.show_courses}");  
          cs.registerOutParameter(1, OracleTypes.CURSOR);  
          cs.executeQuery();                
          rs = (OracleResultSet)cs.getObject(1);  
  //      System.out.println("hi");  
          while(rs.next())  
          {  
          //      String dept_code = rs.getString("dept_code");  
          //      int course_no = rs.getInt("course#");  
          //      String title = rs.getString("title");  
          //      System.out.format(dept_code+","+course_no+","+title);  
          //      System.out.println("success");  
                  System.out.println(rs.getString(1)); }  
  
          //close the result set, statement, and the connection  
          rs.close();  
          cs.close();  
          conn.close();  
     }  
     catch (SQLException ex) { System.out.println ("\n*** SQLException caught ***\n" + ex.getMessage());}  
     catch (Exception e) {System.out.println ("\n*** other Exception caught ***\n");}  
    }  
  }  
  
  javac mydemo2.java  
  java mydemo2  
  
  *** SQLException caught ***  
  Invalid column index  
  </code></pre>