ResultSet y beforeFirst()

Cyttorak
09 de Noviembre del 2004
Necesito recorrer varias veces el mismo ResulSet, mi intencion era situar su cursor al principio con beforeFirst en cada iteracion del bucle, pero no se porque me da fallo asi que me veo obligado a inicializarlo cada vez repitiendo la consulta, lo cual debe ser menos eficiente.

¿Por qué me falla el beforeFirst? ¿como puedo solucianoralo?

Me dice esto pero no lo entiendo:

[05/jul /2003:12:29:36] failure ( 997): Internal error: exception thrown from the servlet service function (uri=/html/mostrarBD.jsp): javax.servlet.ServletException: Invalid operation for forward only resultset : beforeFirst, stack: javax.servlet.ServletException: Invalid operation for forward only resultset : beforeFirst
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at javax.servlet.ServletException.<init>(Compiled Code)
at org.apache.jasper.runtime.PageContextImpl.handlePageException(Compiled Code)
at _jsps._html._mostrarBD_jsp._jspService(Compiled Code)
at org.apache.jasper.runtime.HttpJspBase.service(Compiled Code)
at javax.servlet.http.HttpServlet.service(Compiled Code)
at com.netscape.server.http.servlet.NSServletRunner.Service(Compiled Code)
, root cause: java.sql.SQLException: Invalid operation for forward only resultset : beforeFirst
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at java.sql.SQLException.<init>(Compiled Code)
at oracle.jdbc.dbaccess.DBError.throwSqlException(Compiled Code)
at oracle.jdbc.dbaccess.DBError.throwSqlException(Compiled Code)
at oracle.jdbc.driver.BaseResultSet.beforeFirst(Compiled Code)
at _jsps._html._mostrarBD_jsp._jspService(Compiled Code)
at org.apache.jasper.runtime.HttpJspBase.service(Compiled Code)
at javax.servlet.http.HttpServlet.service(Compiled Code)
at com.netscape.server.http.servlet.NSServletRunner.Service(Compiled Code)

Jose Maria Canela Rios
09 de Noviembre del 2004
Te da problemas por que al momento del createStatement lo tienes que abrir como

createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);