Enviar dados pra IReport

Estou tendo dificuldades para enviar dados para relatórios usando o iReport. Já peguei vários exemplo da internet mas nenhum funcionou. Estou usando o NetBeans.
Eu peguei o seguinte exemplo da net:

import java.sql.*;   
import java.util.*;   
import net.sf.jasperreports.engine.*;   
import net.sf.jasperreports.view.JasperViewer;   
  
public class bairros   
        
{   
  
/* Realiza conexão com o banco de dados, gerando o objeto Connection */   
private static Connection getConnection( ) throws   
  
ClassNotFoundException, SQLException   
{   
String driver = "com.mysql.jdbc.Driver";   
String url = "jdbc:mysql://localhost:3306/sistema";   
String username = "root";
String password = "windows";   
Class.forName(driver);   
Connection con = DriverManager.getConnection( url, username, password );   
return con;   
}   
  
/* Gera Relatorio e visualiza-o */   
public void geraRelatorio( ) throws JRException, Exception   
{   
Connection con = getConnection( );   
Statement stm = con.createStatement( );   
String query = "SELECT nome from cliente";   
ResultSet rs = stm.executeQuery( query );   
  
/* implementação da interface JRDataSource para DataSource ResultSet */   
JRResultSetDataSource jrRS = new JRResultSetDataSource( rs );   
  
/* HashMap de parametros utilizados no relatório. Sempre instanciados */   
Map parameters = new HashMap();   
  
        JasperReport jr;   
        JasperPrint jprint;   
        jr = JasperCompileManager.compileReport("Nota_Fiscal.jrxml");   
        jprint = JasperManager.fillReport(jr, parameters, jrRS);   
        JasperViewer.viewReport(jprint);   
}   
  
  public static void main(String[] args) throws JRException, Exception   
  {   
  new bairros().geraRelatorio();   
  }   
}  

Mas dá o seguinte erro.

No meu relatório que eu criei tem apenas um campo a ser preenchido, que é NOME.

O que fazer? Alguém tem algum exemplo usando o NetBeans que faça funcionar isso?

Obrigado

Coloca o arquivo commons-digester.jar no classpath da sua aplicação.