[ http://issues.apache.org/jira/browse/IBATIS-110?page=all ] Clinton Begin closed IBATIS-110: --------------------------------
Assign To: Clinton Begin Resolution: Won't Fix It looks like you're returning a result set as a property of a bean or a map and you expect it to remain open. This is not the case. iBATIS will close all resources by the time it's execution scope is complete. So by the time you use the returned result set, its underlying statement and parent resultset will be closed. This is expected behaviour and will not change. The solution is to use a custom type handler to fully read the contents of the resultset before it's closed. > Oracle Cursor as ResultSet gives "SQL wrapper has been closed" > -------------------------------------------------------------- > > Key: IBATIS-110 > URL: http://issues.apache.org/jira/browse/IBATIS-110 > Project: iBatis for Java > Type: Bug > Components: SQL Maps > Versions: 2.0.9b > Environment: windows 2000, oracle database 9.0.2, jdeveloper 10.1.3 > Reporter: Eduardo Cortecione Gouvea > Assignee: Clinton Begin > > 5/04/18 15:56:13 java.sql.SQLException: SQL wrapper has been closed! > > 05/04/18 15:56:13 at > oracle.oc4j.sql.proxy.SQLBCELProxy.oc4j_intercept(SQLBCELProxy.java:290) > > 05/04/18 15:56:13 at > oracle.oc4j.sql.proxy.SQLBCELProxy.oc4j_intercept(SQLBCELProxy.java:277) > > 05/04/18 15:56:13 at > oracle.oc4j.sql.proxy.ResultSetBCELProxy.next(ResultSetBCELProxy.java:78) > > 05/04/18 15:56:13 at > mm.orcamento.business.dao.OrcamentoDAO.selecionarProduto(OrcamentoDAO.java:65) > > 05/04/18 15:56:13 at > mm.orcamento.web.OrcamentoAction.selecionarClienteProduto(OrcamentoAction.java:58) > > 05/04/18 15:56:13 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > > 05/04/18 15:56:13 at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > > 05/04/18 15:56:13 at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > > 05/04/18 15:56:13 at java.lang.reflect.Method.invoke(Method.java:324) > > 05/04/18 15:56:13 at > org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280) > > 05/04/18 15:56:13 at > org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:216) > > 05/04/18 15:56:13 at > org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484) > > 05/04/18 15:56:13 at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) > > 05/04/18 15:56:13 at > org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) > > 05/04/18 15:56:13 at > org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) > > 05/04/18 15:56:13 at > javax.servlet.http.HttpServlet.service(HttpServlet.java:763) > > 05/04/18 15:56:13 at > javax.servlet.http.HttpServlet.service(HttpServlet.java:856) > > 05/04/18 15:56:13 at > com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:61) > > 05/04/18 15:56:13 at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown > Source) > > 05/04/18 15:56:13 at > com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:672) > > 05/04/18 15:56:13 at > com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:378) > > 05/04/18 15:56:13 at > com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:869) > > 05/04/18 15:56:13 at > com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:288) > > 05/04/18 15:56:13 at > com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:120) > > 05/04/18 15:56:13 at > com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:299) > -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira