JasperReport e Hibernate coloca no relatorio valor null

Bom dia pessoal estou fazendo meu primeiro relatorio utilizando JasperReport + Hibernate, utilizei aquela implementação HibernateQueryResultDataSource, quando geromeu relatorio os valores aparecem todos como “null” e a quantidade de registro que é apresentada no relatorio é a mesma que existe na tabela.

Meu Bean:

public class Iconterms implements Serializable{

	private String codigoIconterms;
	private String descricao;
	private String observacao;
                // metodos get e set
}

Minha classe para gerar o relátorio:

package br.com.fts.exp.test;

import java.util.HashMap;
import java.util.List;

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;

import org.hibernate.Criteria;
import org.hibernate.Session;

import br.com.fts.exp.bean.Iconterms;
import br.com.fts.exp.util.HibernateUtility;

public class PrimeiroRelatorio {

	public static void main(String[] args) {

		Session session = HibernateUtility.getSession();
		Criteria criteria = session.createCriteria(Iconterms.class);
		List iconterms = criteria.list();
					
		String pathArquivo = "C:\\RelatorioIconterms.jasper";

		HashMap parametros = new HashMap();

		String[] fields = new String[] { "CODIGO_ICONTERMS", "DESCRICAO", "OBSERVACAO" };
		HibernateQueryResultDataSource2 ds = new HibernateQueryResultDataSource2(iconterms, fields);
		
		try {
			JasperReport jasperReport = JasperManager.loadReport(pathArquivo);
			JasperPrint jasperPrint = JasperManager.fillReport(jasperReport,parametros, ds);
			JasperExportManager.exportReportToPdfFile(jasperPrint, "C:\\teste.pdf");
		} catch (JRException e) {
			System.out.println(e.getMessage());
		}

	}

}