To fazendo 1 controle de provas, 1 tabela simples q tem os seguintes campos: id(int, auto incremento, PK), orgao, instituicao, ano, area, cargo, dir_prova, dir_gabarito (ambos varchar): fiz 1 metodo na persistencia q retorna um ResultSet c/ uma linha atraves de um ID especifico passado como parametro p/ ele, e este ResultSet sera passado no parametro do contrutor da interface de Edição dos dados de uma prova, eu to usando ele p pegar os valores de cada coluna da linha passada e coloca-los nos TextFields da interface de edicao de provas, so q ta dando pau q eu ja rodei d+ e n consigo solucionar, ajuda ai plis.
Codigo do metodo q ta dando problema, na Persistencia:
public static ResultSet pegarResultSet(int id) {
Statement stmt;
ResultSet rs = null;
try {
stmt = conexao.createStatement();
String query = "SELECT id, orgao, instituicao, ano, area, cargo, " +
"dir_prova, dir_gabarito FROM provas WHERE id=" + id;
rs = stmt.executeQuery(query);
}catch (SQLException sqle) {
System.err.println("Erro: SQL Exception (Persistencia)");
sqle.printStackTrace();
}
return rs;
}
Codigo da Interface de edicao das provas (GuiEditarProva):
public GuiEditarProva(ResultSet rSet) {
rs = rSet;
initComponents();
try {
jTextField1.setText(rs.getString("orgao"));
jTextField6.setText(rs.getString("instituicao"));
jTextField7.setText(rs.getString("ano"));
jTextField8.setText(rs.getString("area"));
jTextField9.setText(rs.getString("dir_prova"));
jTextField1.setText(rs.getString("dir_gabarito"));
jComboBox2.setSelectedItem(rs.getString("cargo"));
} catch (SQLException ex) {
System.err.println("Erro: SQL Exception (GuiEditarProva)");
ex.printStackTrace();
}
}
Erro(excecao):
Erro: SQL Exception (GuiEditarProva)
java.sql.SQLException: Before start of result set
at com.mysql.jdbc.ResultSet.checkRowPos(ResultSet.java:687)
at com.mysql.jdbc.ResultSet.getStringInternal(ResultSet.java:5021)
at com.mysql.jdbc.ResultSet.getString(ResultSet.java:4999)
at com.mysql.jdbc.ResultSet.getString(ResultSet.java:5015)
at provas.GuiEditarProva.<init>(GuiEditarProva.java:24)
at provas.GuiPrincipal.jButton4ActionPerformed(GuiPrincipal.java:293)
at provas.GuiPrincipal.access$1100(GuiPrincipal.java:20)
at provas.GuiPrincipal$12.actionPerformed(GuiPrincipal.java:174)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
at java.awt.Component.processMouseEvent(Component.java:5488)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1774)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Nao sei o q ta errado, pois parece a logica está td certa, eu fiz 1 metodo mto parecido e pegou, mas este ta dano bronca, alguem sabe oq eh?