This week's book giveaway is in the OCAJP forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide 1Z0-808 and have Jeanne Boyarsky & Scott Selikoff on-line! See this thread for details.
There isn't. But I can tell you what your cursor problem is - been there, done that, got the tar and feathers - it's a resource leak. Somewhere in your code (or a library you use) JDBC Statement objects are not being closed. The Oracle driver does not seem to clean up unclosed statements; maybe the Connection keeps a reference to them, or they don't have a finalize method. If you are using a connection pool this means the Statement, and all its open result sets, stays around forever. Eventually you will run out of cursors.
Be religious about closing all your statements and connections in a finally clause.