Relatório

Pessoal fiz um relatório usando ireport/jasper o relatório está perfeito funciona tudinhu porém quando eu fecho o relatório fecha a minha aplicação e até o meu tom cat que é startado manualmente.

estou usando jsp + iReport

se alguém puder ajudar aguraddeço

um…
nunca vi isso acontecer…

não dá nenhum erro??

Olá marcelo, você precisa dar mais informações ok… Ta lançando alguma exceção? alguma coisa… =)

[quote=febeckers]Pessoal fiz um relatório usando ireport/jasper o relatório está perfeito funciona tudinhu porém quando eu fecho o relatório fecha a minha aplicação e até o meu tom cat que é startado manualmente.

estou usando jsp + iReport

se alguém puder ajudar aguraddeço[/quote]
Você não está usando jasper viewer numa aplicação web neh?

[quote=furutani][quote=febeckers]Pessoal fiz um relatório usando ireport/jasper o relatório está perfeito funciona tudinhu porém quando eu fecho o relatório fecha a minha aplicação e até o meu tom cat que é startado manualmente.

estou usando jsp + iReport

se alguém puder ajudar aguraddeço[/quote]
Você não está usando jasper viewer numa aplicação web neh?[/quote]

sim pq?

nao nao lanca nenhuma exception

Se vc usa o jasper viewer ele realmente fecha sua aplicação pq o frame dele esta setado pra dar um belo System.exit(0) para sair… pra resolver o problema vc deve passar false para o parametro isExitOnClose quando invocar o metodo construtor… esse parametro por padrão vem true! :wink:

Este é o método que fecha a janela do JasperViewer, entenda o porque:

void exitForm() { if (this.isExitOnClose){ System.exit(0); } else { this.setVisible(false); this.viewer.clear(); this.viewer = null; this.getContentPane().removeAll(); this.dispose(); } }

Segue meu código!

só me diz uma coisa tem como resolver isso e se tem como eu tenho que fazer via código… pode me dar um exemplo?

        query = "SELECT * from TABELA"; 
	rs = st.executeQuery(query);
	JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
	Map parameters = new HashMap(); 
	JasperReport jr; 
	JasperPrint jprint;
	jr = JasperCompileManager.compileReport("caminho do relatorio");
	jprint = JasperManager.fillReport(jr, parameters, jrRS); 
	JasperViewer.viewReport(jprint);

o método que você passou eu entendi mas os comandos para dar um dispose() na janela do jasper tu sabe me dizer?

[quote=febeckers]Segue meu código!

só me diz uma coisa tem como resolver isso e se tem como eu tenho que fazer via código… pode me dar um exemplo?

        query = "SELECT * from TABELA"; 
	rs = st.executeQuery(query);
	JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
	Map parameters = new HashMap(); 
	JasperReport jr; 
	JasperPrint jprint;
	jr = JasperCompileManager.compileReport("caminho do relatorio");
	jprint = JasperManager.fillReport(jr, parameters, jrRS); 
	JasperViewer.viewReport(jprint);

o método que você passou eu entendi mas os comandos para dar um dispose() na janela do jasper tu sabe me dizer?[/quote]

Faça assim…

JasperViewer.viewReport(jprint, false);

O segundo parametro do metodo viewReport() é o tal do isExitOnClose q eu havia falado… :wink:
Passando false pra ele vc resolve seu problema

bah cara valeu mesmo… tava precisando…
fazia um tempinhu que eu tava atras disso!!!

funcionou!!! brigadao!