title: Hibernate stored procedure - not known to support REF_CURSOR parameters
body: <p>Hello i  m work <strong>Oracle</strong> stored procedure , i have procedure name <strong>Test</strong> and 2 parameter in - > <strong>x IN VARCHAR2</strong>,  out -> <strong>REF_CURSOR in out SYS_REFCURSOR</strong> . i m trying to call this procedure using hibernate, but i have exception </p>
  
  <p><strong>Exception in thread "main" org.hibernate.QueryException: Dialect [org.hibernate.dialect.OracleDialect] not known to support REF_CURSOR parameters</strong></p>
  
  <pre><code>import model.Apprisal;
      import oracle.jdbc.OracleTypes;
      import org.hibernate.Session;
      import org.hibernate.SessionFactory;
      import org.hibernate.cfg.Configuration;
      import org.hibernate.procedure.ProcedureCall;
      import org.hibernate.procedure.ProcedureOutputs;
      import org.hibernate.result.Output;
      import org.hibernate.result.ResultSetOutput;
  
      import javax.persistence.EntityManager;
      import javax.persistence.ParameterMode;
      import javax.persistence.StoredProcedureQuery;
      import java.sql.CallableStatement;
      import java.sql.ResultSet;
      import java.sql.Types;
      import java.util.List;
  
      public class DBUtil {
          public static void main(String[] args) {
  
              // crt factiry
              SessionFactory factory = new Configuration()
                      .configure("hibernate.cfg.xml")
                      //.addAnnotatedClass(Apprisal.class)
                      .buildSessionFactory();
  
              // crt sesion
              Session session = factory.getCurrentSession();
              session.beginTransaction();
  
  
  
              ProcedureCall call =session.createStoredProcedureCall( "{CALL TEST(?,?) }");
  
  
              call.registerParameter(1, String.class, ParameterMode.IN).bindValue("12345");
              call.registerParameter(2, Class.class, ParameterMode.REF_CURSOR);
  
  
  
  
              Output output = call.getOutputs().getCurrent();
  
              System.out.println("done");
              factory.close();
  
          }
      }
  </code></pre>