Jasper Reports - como retornar para o cliente

tenho o relatório pronto. funcionando dentro do ireport. tô tendo problemas pra rodar ele na minha aplicação. achei diversos tutoriais, mas nenhum exatamente como eu kero.
Eu gostaria de criar um PDF, mas sem necessariamente grava-lo no servidor; criar ele virtualmente, somente na memoria. depois envia-lo ao cliente, mas em uma nova janela.
pensei em compilar o .jasper, colocar como atributo da request e criar um jsp, responsável por dar alguma informaçao para o cliente e abrir a nova janela, usando esse objeto que estará na request como conteúdo da nova janela…
será q consegui ser claro?? agradeço qquer ajuda.

ahh… pra constar: a aplicação é baseada em struts.