Ola pessoal …
Hj tenho um relatório (ireport) que tem como base de dados um arquivo XML, funciona normal.
Mas agora precisei acrescentar um sub relatório nele, quando testo ele no ireport, funciona legal, mas quando chamo ele pela minha classe java, só o ralatório principal vem normal, mas os dados do sub relatório não vem, vem em branco…
Sera que estou esquecendo de declarar algo ou é alguma configuração do ireport ??
Segue minha classe java que uso para chamar meu relatório
package danfe;
[code]/**
*
-
@author Administrador
*/
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.data.JRXmlDataSource;
import net.sf.jasperreports.view.JasperViewer;
public class Danfe {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws FileNotFoundException, IOException, JRException {
try {
//Caminho do arquivo Danfe
String relatorio = ("J:/RP-GRF/NFE-KM/ESTAB-01/EXECUTAVEIS/DANFE.jasper");
//Configurando a classe JRXmlDataSource que apontara o caminho do nosso XML de dados e sua pesquisa XPath geral
JRXmlDataSource xml = new JRXmlDataSource("J:/RP-GRF/NFE-KM/ESTAB-01/XML/NOTA- PROC.xml", "/nfeProc/NFe/infNFe/det");
/*Gerando o relatorio (Filling) informando o caminho do relatorio, os parametros (neste caso nenhum paramentro esta sendo passado ao relatorio, por isso o HashMap esta vazio) e o objeto JRXmlDataSource configurado)*/
JasperPrint jp = JasperFillManager.fillReport(relatorio, new HashMap(), xml);
//Utilizando o JasperView, uma classe desktop do jasper para visualização dos relatorios
JasperViewer.viewReport(jp, false);
}
} catch (JRException e) {
e.printStackTrace();
}
}
}[/code]
Qualquer ajuda é bem vinda !!
Abraços…