Relatórios customizados no Jasper

Caros colegas de causa…

Algum tempo estou a criar relatórios no JasperReport e estou vendo a necessidade de criar um relatório customizado em tempo de execução, ou seja apresentar os campos que o usuário escolher. Tentei utilizar manipuladores de arquivos XML para alterar o XML do projeto para após isso ser compilado e gerado, mas na manipulação do XML encontrei diversos problemas como por exemplo não acessar alguns nós.
A minha questão é? Alguém já fez algo parecido tipo um relatório customizado em tempo de execução no Jasper e poderia me dar uma luz de como fazer?

Bom acredito que você posto na seção errada do forum. (algum moderador move para seção de acordo)

vo tenta te ajuda com a experiência que tive. Eu nunca precisei fazer os campos mas precisei por margens configurada por o usuário
você vai precisar ler o arquivo xml e copillar você mesmo. no meu caso das margens fiz da seguinte maneira.

        JasperDesign jDesign = JRXmlLoader.load(reportStream);
        
         //aqui ponho a margem para você  não vai ser preciso.
        JRBaseStyle jrbs = new JRBaseStyle();
        jrbs.getLineBox().setLeftPadding(200);        

        jDesign.setDefaultStyle(jrbs);
        JasperReport jasperReport =  JasperCompileManager.compileReport(jDesign);

bom pelo que andei vendo no JasperDesign tem o método addField() acho que por ai talvez você consiga algo… mas teria que ir pouco mais a fundo