1

PLSQL ストアド プロシージャを呼び出そうとすると、回避できないこのエラーが発生します。ストアド プロシージャは 5 つのパラメーターを取り、カーソルとエラー メッセージを返します。すべてのパラメータは varchar2 で、エラー メッセージは varchar2 です。

メソッド:

List fetchEmployees(){
    List employeeList = []
    Sql sql = new groovy.sql.Sql(dataSource)
    sql.call("BEGIN package.p_get_employees(?,?,?,?,?,?,?); END;",
        [code1,code2,code3,code4,code5,Sql.resultSet(OracleTypes.CURSOR),Sql.resultSet(OracleTypes.VARCHAR)])
    {cursorResults ->

                while(cursorResults.next()){
                    def person = new Person()
                    person.setEmail(cursorResults.getAt(1))
                    person.setNetid(cursorResults.getAt(0))
                    employeeList.add(person)
                }
    }

    return employeeList
}

そして、これを実行しようとすると、次のエラーが発生します。

Caused by: java.sql.SQLException: org.apache.commons.dbcp.DelegatingCallableStatement with address: "oracle.jdbc.driver.T4CCallableStatement@e76514" is closed.
...
4

0 に答える 0