SQL Exception: Before start of result set

Bom dia pessoal, estou desenvolvendo um sistema em JSP para um trabalho da faculdade, e estou com dificuldade para realizar uma query, a query não dá pau, porém quando vou imprimir o resultado usando o ResultSet.getString ele dá o Exception mencionado. Estou usando o NetBeans.

Para facilitar o debug criei um código parecido no eclipse em um aplicação que imprime no console mesmo, e está dando o mesmo erro, segue o código abaixo, alguém poderia me dar um help?

Grato,

Daniel

import java.sql.Connection;  
import java.sql.DriverManager;  
import java.sql.SQLException;  

import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.ResultSet;
 
public class Conexao 
{  
	  
	public static void main(String[] args) 
	{    
		new Conexao().RealizaConexao();
    }
		
	public void RealizaConexao()
	{
	
		String url = "jdbc:mysql://localhost:3306/trabalho_inter";  
        String driver = "com.mysql.jdbc.Driver";
        String user = "root";
		String pass = "mysql";
		String param = "1";
		
  
        try 
        {  
            Class.forName(driver);  
            Connection con = DriverManager.getConnection(url,user,pass);
            
            PreparedStatement stmt = (PreparedStatement)con.prepareStatement("select DESCRICAO, QUANTIDADE, VAL_PRODUTO, STATUS from TB_PRODUTOS where COD_PRODUTO = ?");
            
            stmt.setString(1, param);
            
            ResultSet rs = null;
            
            try
            {
            	rs = (ResultSet)stmt.executeQuery();
            	
            	System.out.println("OK");
            	
            	System.out.println(rs.getString(1));
            }
            
            catch (Exception e)
            {            	
            	System.out.println("NOK");
            	System.out.println(e.getMessage());            	
            }
            
                        
        }
        
        catch (ClassNotFoundException e) 
        {  
            System.out.println("It can't connect to the database");  
            //return null;  
        }
        
        catch (SQLException e) 
        {  
            e.printStackTrace();  
            System.out.println(e.getMessage());  
            System.out.println("It can't connect to the database");  
        }
		
	}
		
} 



O engraçado é que imprime o seguinte:

OK
NOK
Before start of result set

Ou seja, ele executa a query normalmente , a exceção está sendo lançada na hora do getString do Result Set.

1 curtida

c precisa fzr rs.next()

1 curtida

if(rs != null) { while(rs.next()) { ... } }

1 curtida

up, pois muito útil rs…

abraços,