Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
运行Jasper报表时出现错误“OUT paramater used in non-storage procedure call:ORACLE_REF_CURSOR class java.sql.ResultSet”_Oracle_Stored Procedures_Jasper Reports - Fatal编程技术网

运行Jasper报表时出现错误“OUT paramater used in non-storage procedure call:ORACLE_REF_CURSOR class java.sql.ResultSet”

运行Jasper报表时出现错误“OUT paramater used in non-storage procedure call:ORACLE_REF_CURSOR class java.sql.ResultSet”,oracle,stored-procedures,jasper-reports,Oracle,Stored Procedures,Jasper Reports,运行报告时,我遇到以下错误。知道为什么吗?这是一个早期工作的报告,但不确定发生了什么变化,因此停止工作 填写非存储过程调用中使用的打印输出参数时出错:ORACLE\u REF\u CURSOR类java.sql.ResultSet 正在设置文件解析程序 net.sf.jasperreports.engine.JRException:OUT参数用于非存储过程调用:ORACLE\u REF\u CURSOR类java.sql.ResultSet 在com.jaspersoft.jrx.query.P

运行报告时,我遇到以下错误。知道为什么吗?这是一个早期工作的报告,但不确定发生了什么变化,因此停止工作

填写非存储过程调用中使用的打印输出参数时出错:ORACLE\u REF\u CURSOR类java.sql.ResultSet 正在设置文件解析程序 net.sf.jasperreports.engine.JRException:OUT参数用于非存储过程调用:ORACLE\u REF\u CURSOR类java.sql.ResultSet 在com.jaspersoft.jrx.query.PlSqlQueryExecuter.createStatementPlSqlQueryExecuter.java:369 位于com.jaspersoft.jrx.query.PlSqlQueryExecuter.createDatasourcePlSqlQueryExecuter.java:113 位于net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasourceJRFillDataset.java:1086 net.sf.jasperreports.engine.fill.JRFillDataset.initDatasourceJRFillDataset.java:667 net.sf.jasperreports.engine.fill.JRBaseFiller.setParametersJRBaseFiller.java:1258 net.sf.jasperreports.engine.fill.JRBaseFiller.fillJRBaseFiller.java:877 net.sf.jasperreports.engine.fill.JRBaseFiller.fillJRBaseFiller.java:822 net.sf.jasperreports.engine.fill.JRFiller.fillJRFiller.java:61 net.sf.jasperreports.engine.JasperFillManager.fillJasperFillManager.java:446 net.sf.jasperreports.engine.JasperFillManager.fillJasperFillManager.java:276 位于net.sf.jasperreports.engine.JasperFillManager.fillReportJasperFillManager.java:745 位于com.jaspersoft.ireport.designer.compiler.IReportCompiler.runIReportCompiler.java:891 位于org.openide.util.RequestProcessor$Task.runRequestProcessor.java:572 位于org.openide.util.RequestProcessor$Processor.runRequestProcessor.java:997 打印未填写。尝试使用空数据源


我通过从Jasper报告中的过程调用中删除ORACLE_REF_CURSOR参数解决了这个问题

在抛出上述错误时,过程调用类似于{call procedure1$p{param1},$p{ORACLE_REF_CURSOR}}。从调用中删除ORACLE_REF_CURSOR参数后,它现在可以工作了。下面是过程调用在报告中的样子{call procedure1$P{param1}}

有趣的是,报告之前在过程的参数中使用了ORACLE_REF_光标,但突然开始抛出上述错误


如果有人对此问题有更多的解释,请更新答案。

您是否提出了在Jasper Studio中使用ORACLE\u REF\u CURSOR的解决方案?