Groovy SQL PLSQL调用java.SQL.SQLEception:“oracle.jdbc.driver”已关闭

Groovy SQL PLSQL调用java.SQL.SQLEception:“oracle.jdbc.driver”已关闭,groovy,plsql,Groovy,Plsql,试图调用PLSQL存储过程时遇到了我无法回避的错误。 存储过程接受5个参数并返回一个游标和一条错误消息。所有参数都是varchar2,错误消息是varchar2 方法: List fetchEmployees(){ List employeeList = [] Sql sql = new groovy.sql.Sql(dataSource) sql.call("BEGIN package.p_get_employees(?,?,?,?,?,?,?); END;",

试图调用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.
...

这和你们之前问的问题无关吗?不,那个问题并没有参数。我能找到的所有示例都不使用参数。访问API本身如何?谢谢,我将花一些时间在文档中,看看我是否能自己解决它。看看calljava.lang.String、java.util.List、groovy.lang.Close,它显示了您的用例示例。