Ajuda: O ireport não visualiza o subrelatorio

0 respostas
B

Ola amigos,
Preciso passar 2 listas para o datasource do ireport passando 1 lista funciona prefeitamente.

Uso um subrelatorio para exibir a nota.

A ideia é apresentar a nota embaixo dos livros mais preciso que seja em outra lista pois no meu projeto final o caso é outro esse foi um exemplo que encontrei na net e acrescentei a nota.

O problema é que não exibi as notas.

Obrigado pela atenção de todos.

public class Inicio {

public void exibirRelatorio() {
	// Caminho do .jasper
	String caminhoRelJasper = "pasta/Livros.jasper";
	
	String sub_relatorio = "pasta/sub_rel.jasper";

	
	
	// Lista com beans dos livros
	List listaLivros = getLivros();
	
	// Lista com beans das avaliacoes
	List listaNota = getNota();

	// O datasource original do exemplo
	JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(
			listaLivros);
	
	// Parametros do relatorio principal
	Map parametros = new HashMap();
	parametros.put("sub_relatorio",sub_relatorio);

	
	// O datasource que preciso enviar tambem
	 JRBeanCollectionDataSource ds_sub = new JRBeanCollectionDataSource(
			listaNota);	
	
	// Parametros do sub relatorio
	Map parametros_sub = new HashMap();
	
	

	JasperPrint impressao = null;
	try {

		//prepara o sub relatorio 	
		JasperFillManager.fillReport(sub_relatorio, parametros_sub, ds_sub);
		
		
		//prepara o relatorio principal
		impressao = JasperFillManager.fillReport(caminhoRelJasper, parametros, ds);
		JasperViewer viewer = new JasperViewer(impressao, true);
		viewer.setVisible(true);

	} catch (JRException e) {
		System.out.println(e.getMessage());
	}

}

public List getLivros() {
	List listaLivros = new ArrayList();
	Livro livro = new Livro();

	livro.setTitulo("Use a cabeça! Padrões de Projeto - Design Patterns");
	livro.setAutor("Freeman, Eric / Freeman, Elisabeth");
	livro.setIsbn("[telefone removido]");
	livro.setEditora("Alta Books");
	livro
			.setDescricao("Como você sabe que não quer reinventar a roda (ou, "
					+ "pior, um pneu furado), "
					+ "então você busca padrões de projetos");
	listaLivros.add(livro);

	livro = new Livro();
	livro.setTitulo("Entendendo e Dominando o Linux");
	livro.setAutor("Morimoto, Carlos");
	livro.setIsbn("[telefone removido]");
	livro.setEditora("Digerati");
	livro
			.setDescricao("Como o nome diz, este livro é uma obra destinada a "
					+ "todos aqueles que "
					+ "pretendem conhecer na prática e em detalhes os "
					+ "principais recursos oferecidos pelo Linux");
	listaLivros.add(livro);

	livro = new Livro();
	livro.setTitulo("Guia de Certificação em Java - Exame CX-310-035");
	livro.setAutor("Pereira, Rafael");
	livro.setIsbn("[telefone removido]");
	livro.setEditora("Ciência Moderna");
	livro.setDescricao("Este Guia de Certificação em Java é um livro "
			+ "fundamental para preparar os"
			+ " candidatos ao exame de programador Java da Sun, "
			+ "a primeira e mais "
			+ "requisitada certificação desta tecnologia.");
	listaLivros.add(livro);

	return listaLivros;
}


public List getNota() {
	List listaNota= new ArrayList();
	Nota nota = new Nota();

	nota.setNome_avaliador("Carlos");
	nota.setNota("5.0");
	listaNota.add(nota);

	nota = new Nota();
	nota.setNome_avaliador("Ricardo");
	nota.setNota("6.0");
	listaNota.add(nota);
	
	nota = new Nota();
	nota.setNome_avaliador("Anderson");
	nota.setNota("7.0");
	listaNota.add(nota);
	

	return listaNota;
}



public static void main(String[] args) {
	new Inicio().exibirRelatorio();
}

}

Criado 18 de abril de 2009
Respostas 0
Participantes 1