Dificuldade em preencher um relatório iReport com um objeto que contém uma lista

Olá pessoal!
Estou tentando preencher um relatório feito no iReport com um objeto que contém uma lista.
A lista eu já consegui fazer aparecer no relatório(mesmo não sabendo se fiz da forma correta) mas os dados que são fixos no cabeçalho do relatório eu não consigo preencher. Alguém consegue me ajudar?

public void exibirRelatorioExtratoSaude(ExtratoDet extrato) throws JRException {
        
        InputStream relJasper = Relatorios.class.getResourceAsStream("/relatorios/ExtratoSaude.jrxml");
        
        JasperReport report = JasperCompileManager.compileReport(relJasper);                 
        
        HashMap parametros = new HashMap <>();
        parametros.put("codempmatr",  extrato.getCodempMatr());
        parametros.put("NomeAssoc", extrato.getNomeAssoc());
        parametros.put("totalExtrato", extrato.getTotalExtrato());
        
        
        JasperPrint impressao = JasperFillManager.fillReport(report,parametros,new JRBeanCollectionDataSource(extrato.getListaRegistros()) );          
        
        JasperViewer.viewReport(impressao,false);

}

GRAVE: null
net.sf.jasperreports.engine.JRException: Error retrieving field value from bean : codempmatr

Amigo, o uso mais comum do Ireport é desenhar a tabela fixa (isso inclui o nome das colunas), e depois passar a lista dos objetos que preenchem essa tabela que foi desenhada.

Acho que não é isso, mas foi o que eu entendi… Você quer preencher dinamicamente o nome das colunas? A classe do seu objeto pode mudar?

Se você quer fazer um relatório simples, uma lista e pronto, é só você editar o nome da coluna, pois ele é um simples label dentro de uma table, clica nele e edita.

Boa tarde,

Você está passando uma lista como JRBeanCollectionDataSource, provavelmente deverá está consumindo com o Details no relatório. Para você conseguir pegar um valor e mostrar no pageHeader por exemplo, deverá passar o objeto ou o atributo do objeto como parâmetro no hasmap. Você pode pegar a lista fazer o for no Java e mandar o parâmetro que precisa para o ireport imprimir.

Abraço.