[RESOLVIDO] Paginação não funciona

4 respostas
nayaralopes

Fala galera! Beleza?
Eu gostaria de navegar entre os meus registros do BD. Com o que pesquisei aqui no fórum cheguei ao código abaixo, mas não funciona e apresenta erro.

Por favor, alguém pode me ajudar a corrigir?

Na minha classe de conexão ficou assim…

...
public ResultSet buscarRelatorio(){
      ResultSet rs = null;
      try{  
          Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
          stmt.executeQuery("select data,letra,lider,ocorrencia from Relatorios where postado='S'");
          rs=stmt.getResultSet(); 
      } catch (SQLException e) {  
          throw new RuntimeException(e);  
      } 
      return rs;
}
...

No meu form ficou assim…

...
public class FormPostado extends javax.swing.JFrame {
    
    Acesso c = new Acesso();
...
private void jbPrimeiroActionPerformed(java.awt.event.ActionEvent evt) {                                          
	// TODO add your handling code here:
        ResultSet rs = c.buscarRelatorio();
        try {
            rs.first();
            jtfData.setText(rs.getString("data"));                
            jtfLetra.setText(rs.getString("letra"));
            jtfTurno.setText(rs.getInt("turno"));
            jtfLider.setText(rs.getString("lider"));                
            jtpOcorrencia.setText(rs.getString("ocorrencia"));
        
        }catch(SQLException e){  
            System.out.println("Primeiro");
        }finally{  
           try {  
               rs.close();  
           } catch (SQLException e) {  
               e.printStackTrace();  
           }  
       }
}

private void jbProximoActionPerformed(java.awt.event.ActionEvent evt) {                                          
        // TODO add your handling code here:
        ResultSet rs = c.buscarRelatorio();
        try {
            rs.next();
            jtfData.setText(rs.getString("data"));                
            jtfLetra.setText(rs.getString("letra"));
            jtfTurno.setText(rs.getInt("turno"));
            jtfLider.setText(rs.getString("lider"));                
            jtpOcorrencia.setText(rs.getString("ocorrencia"));
        
        }catch(SQLException e){  
            System.out.println("Proximo");
        }finally{  
           try {  
               rs.close();  
           } catch (SQLException e) {  
               e.printStackTrace();  
           }  
       }
    }

private void jbAnteriorActionPerformed(java.awt.event.ActionEvent evt) {                                          
	// TODO add your handling code here:
        ResultSet rs = c.buscarRelatorio();
        try {
            rs.previous();
            jtfData.setText(rs.getString("data"));                
            jtfLetra.setText(rs.getString("letra"));
            //jtfTurno.setText(rs.getInt("turno"));
            jtfLider.setText(rs.getString("lider"));                
            jtpOcorrencia.setText(rs.getString("ocorrencia"));
        
        }catch(SQLException e){  
            System.out.println("Anterior");
        }finally{  
           try {  
               rs.close();  
           } catch (SQLException e) {  
               e.printStackTrace();  
           }  
       }
}

private void jbUltimoActionPerformed(java.awt.event.ActionEvent evt) {                                          
	// TODO add your handling code here:
        ResultSet rs = c.buscarRelatorio();
        try {
            rs.last();
            jtfData.setText(rs.getString("data"));                
            jtfLetra.setText(rs.getString("letra"));
            //jtfTurno.setText(rs.getInt("turno"));
            jtfLider.setText(rs.getString("lider"));                
            jtpOcorrencia.setText(rs.getString("ocorrencia"));
        
        }catch(SQLException e){  
            System.out.println("Ultimo");
        }finally{  
           try {  
               rs.close();  
           } catch (SQLException e) {  
               e.printStackTrace();  
           }  
       }
}
...

E o erro quando clico em qualquer dos botões de navegação…

run:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at padrao.Acesso.buscarRelatorio(Acesso.java:72)
	at padrao.FormPostado.jbProximoActionPerformed(FormPostado.java:250)
	at padrao.FormPostado.access$300(FormPostado.java:19)
	at padrao.FormPostado$3.actionPerformed(FormPostado.java:120)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
	at java.awt.Component.processMouseEvent(Component.java:6288)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
	at java.awt.Component.processEvent(Component.java:6053)
	at java.awt.Container.processEvent(Container.java:2041)
	at java.awt.Component.dispatchEventImpl(Component.java:4651)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Component.dispatchEvent(Component.java:4481)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
	at java.awt.Container.dispatchEventImpl(Container.java:2085)
	at java.awt.Window.dispatchEventImpl(Window.java:2478)
	at java.awt.Component.dispatchEvent(Component.java:4481)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643)
	at java.awt.EventQueue.access$000(EventQueue.java:84)
	at java.awt.EventQueue$1.run(EventQueue.java:602)
	at java.awt.EventQueue$1.run(EventQueue.java:600)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
	at java.awt.EventQueue$2.run(EventQueue.java:616)
	at java.awt.EventQueue$2.run(EventQueue.java:614)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:613)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Abraços!! :smiley:

4 Respostas

diego.sas

Bom dia.
Não seria melhor você popular uma lista e fazer o controle da paginação da lista…
Assim você fecha o resultSet e trabalha apenas com a lista em memória.
Abraços

nayaralopes

Oi, Diego! Obrigadão pela sua dica!!!
Consegui acertar o meu código mesmo, eu estava esquecendo de abrir a conexão!

Isso que dá querer “brincar de programar”! Rs…

Abração!

diegorosa

nayaralopes:
Oi, Diego! Obrigadão pela sua dica!!!
Consegui acertar o meu código mesmo, eu estava esquecendo de abrir a conexão!

Isso que dá querer “brincar de programar”! Rs…

Abração!

cara sei que vou fazer uma pergunta besta…mas como se coloca um topico como resolvido?

matheuslmota

diegorosa:
nayaralopes:
Oi, Diego! Obrigadão pela sua dica!!!
Consegui acertar o meu código mesmo, eu estava esquecendo de abrir a conexão!

Isso que dá querer “brincar de programar”! Rs…

Abração!

cara sei que vou fazer uma pergunta besta…mas como se coloca um topico como resolvido?

Tu edita o teu primeiro post e no título do tópico tu acrescenta “[Resolvido]”.

Criado 28 de fevereiro de 2012
Ultima resposta 28 de fev. de 2012
Respostas 4
Participantes 4