Jasper Report não exibe dados da Map!

3 respostas
juloko666

Tenho uma classe que instancia um objeto da classe abaixo (GeraRelatorio), e configura uma série de parametros para relatorio e depois chama o metodo gerarRelatorio(). Mas na hora de exibir, o visualizador do Jasper me exibe esta mensagem:“The document has no pages”

Tenho certeza que estou passando os parametros corretamente e que configurei certo o arquivo .jrxml com os parametros identicos que colouquei no método “put(“chave”,“valor”);”

public class GeraRelatorio  {

	
	private Map<String, String> parametro = new HashMap<String, String>();
	
	public final static String caminho = "../meu_sistema/outros_diretorios/relatorios/";
	
	private String nomeArquivoJasper;

	private String nomeArquivoJrprint;

	private String nomeArquivoPDf;





	public void setParametro(String _chave, String _valor) {
		this.parametro.put(_chave, _valor);

	}

	public void setNomeArquivo(String _nomeArquivos) throws Exception {
		this.nomeArquivoJasper = _nomeArquivos + ".jasper";
		this.nomeArquivoJrprint = _nomeArquivos + ".jrprint";
		this.nomeArquivoPDf = _nomeArquivos + ".pdf";
		
	}

	/**
	 * @return URL DO RELATORIO
	 */
	public String gerarRelatorio() throws Exception {

		String urlRelatorio="/siges/atribuicao/relatorios/" + this.nomeArquivoPDf;
			
		JRResultSetDataSource jrRS = null;   

		JasperFillManager.fillReportToFile(caminho+this.nomeArquivoJasper, this.parametro,jrRS);

		JasperViewer.viewReport(caminho+this.nomeArquivoJrprint, false,false );
			
		//Primeiro quero fazer funcionar com o método acima....
		//JasperExportManager.exportReportToPdfFile(caminho+this.nomeArquivoJrprint,caminho+this.nomeArquivoPDf);

		return urlRelatorio;
	}

}

Há algo de errado com a classe?Eu passo uma referencia JRResultSetDataSource null, pois não preciso acessar banco, o que quero exibir no relatorio é so o que eu passei no Map!!!

3 Respostas

rockstorm

Verifique se no seu relatorio você criou uma variavel com o mesmo nome da chave(no Map).
EX:

teste.put("chave", string);

no Relatorio:

$F{chave}

A variável chave deve estar dentro do relatorio

J

Verifique no iReport a configuração para trazer os detalhes mesmo se o dados forem em branco.

Vc clica em Edit/Report Properties/More/When no data

juloko666

estava pesquisando aki…ai cai numa pagina dizendo COMO GERAR RELATORIO COM O JASPER A PARTIR DE VO’s (Valor/Objeto)…

Acho q eh isso que terei de fazer…já que minha fonte de dados é o objeto de uma classe com os atributos preenchidos…

Criado 25 de junho de 2007
Ultima resposta 25 de jun. de 2007
Respostas 3
Participantes 3