Como ler um ResultSet na pagina jsf ?java.sql.SQLException: Operação inválida para encaminhar ape

1 resposta
P

Olá,

peguei um exemplo de jsf e na hora de jogar na tela me da erro abaixo.

Alguém poderia me ajudar ou tem outra forma de fazer isso …

abs

<html>

    <head>
        <title>Lista de Cursos </title>
        <LINK href="estilo.css" type="text/css" rel="stylesheet">
    </head>
    
    <body>
       <div align=center>
            <f:view>
                <h:dataTable value="#{curso.lista}" var="curso">
                    <h:column>
                      <f:facet name="header">
                        <h:outputText value="Código"/>
                      </f:facet>
                      <h:outputText value ="#{curso.idcurso}" />
                    </h:column>
                       
                    
                    <h:column>
                      <f:facet name="header">
                        <h:outputText value="Curso"/>
                      </f:facet>                    
                      <h:outputText value ="#{curso.curso}" />
                    </h:column>
                    
                </h:dataTable>
                
            </f:view>
       
       </div>
public ResultSet getLista(){
		
		ResultSet rs=null;
		Connection  cn = Conexao.obterConexao();
		PreparedStatement pst = null;
		
		try{
			
			pst=cn.prepareStatement("select idcurso,curso from cursos order by idcurso");
			rs= pst.executeQuery();
			
		}catch(SQLException e){
			
		}
		
		return rs;
	}
03/09/2009 17:35:12 org.apache.catalina.core.ApplicationDispatcher invoke
SEVERE: Servlet.service() for servlet jsp threw exception
java.sql.SQLException: Operação inválida para encaminhar apenas conjunto de resultados: absolute
	at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
	at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
	at oracle.jdbc.driver.BaseResultSet.absolute(BaseResultSet.java:97)
	at javax.faces.model.ResultSetDataModel.isRowAvailable(ResultSetDataModel.java:113)
	at javax.faces.model.ResultSetDataModel.setRowIndex(ResultSetDataModel.java:252)
	at javax.faces.model.ResultSetDataModel.setWrappedData(ResultSetDataModel.java:289)
	at javax.faces.model.ResultSetDataModel.<init>(ResultSetDataModel.java:64)
	at javax.faces.component.UIData.getDataModel(UIData.java:866)
	at javax.faces.component.UIData.setRowIndex(UIData.java:379)
	at com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:65)
	at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:683)
	at javax.faces.component.UIData.encodeBegin(UIData.java:681)
	at javax.faces.webapp.UIComponentTag.encodeBegin(UIComponentTag.java:591)
	at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:543)
	at com.sun.faces.taglib.html_basic.DataTableTag.doEndTag(DataTableTag.java:491)
	at org.apache.jsp.listarcursos_jsp._jspx_meth_h_005fdataTable_005f0(listarcursos_jsp.java:164)
	at org.apache.jsp.listarcursos_jsp._jspx_meth_f_005fview_005f0(listarcursos_jsp.java:117)
	at org.apache.jsp.listarcursos_jsp._jspService(listarcursos_jsp.java:77)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:691)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)

1 Resposta

marciofica

Você tem que jogar o resultado do seu resultset em uma coleção.

Criado 3 de setembro de 2009
Ultima resposta 3 de set. de 2009
Respostas 1
Participantes 2