Como gravar pdf apartir de uma consulta em jsp [Resolvido]

Bom dia Pessoal,

tenho o seguinte metodo


	private boolean montaPDF(String pTabela,String pCaminho,String pBanco){
	
		String vCaminho = null;	
		int vPos        = 0;
		ResultSet vRs = null; 	
        try {
        	//vCaminho = funcionalidades.class.getClassLoader().getResource("").getPath();
        	//vPos = vCaminho.indexOf("cemicres");
        	//vCaminho = vCaminho.substring(1,vPos);
        	

            //vCaminho = "D:/IFsoluctions"; 
        	
        	File arqSaida = new File(vCaminho+".xls" );
        	FileOutputStream output = new FileOutputStream( arqSaida );
            
        	workbook = new HSSFWorkbook();
            principalSheet = workbook.createSheet("Consulta");
            operacoes op = new operacoes();
        	especializados esp = new especializados();
        	op.setTabela(pTabela);
            vRs = op.realizaConsulta(esp.getCampos(pTabela, pBanco), null, pBanco); 
            int linha = 0;
            try {
				while(vRs.next()){
					
					linha++;
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
            
			op.setTabela(pTabela);
            vRs = op.realizaConsulta(esp.getCampos(pTabela, pBanco), null, pBanco);
            String[][] dados = new String[linha][3];
            
            int coluna = 0; 
            linha = 0;
            try {
				while(vRs.next()){
					
					coluna = 0;
					if (pTabela.equals("VW_ARVORE")){
						dados[linha][coluna] = vRs.getString("COD_PATH").toString();
						coluna++;
						dados[linha][coluna] = vRs.getString("NOME").toString();
						coluna++;
						dados[linha][coluna] = vRs.getString("TIPO").toString();
					}
					linha++;
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
            
            lista.addAll(Arrays.asList(dados));
            
            String planilha[] = null;
            for (linha = 0; linha < lista.size(); linha++) {
            	planilha = lista.get(linha);
                HSSFRow row = principalSheet.createRow(linha);
                for (int col = 0; col < planilha.length; col++) {
                    String s = planilha[col];
                    HSSFCell cell = row.createCell(col);
                    cell.setCellValue(s);
                }
            }
            
            workbook.write(output);
            output.flush();
            output.close();
            
            lista = new ArrayList<String[]>();
            return true;
            
        } catch (IOException ex) {
            ex.printStackTrace();
        }
				 
		return false;
	}

que e chamado pelo metodo public

	public boolean geraPDF(String pTabela,String pCaminho,String pBanco){
		return montaPDF(pTabela,pCaminho,pBanco);
	}

Que por sua vez e chamado pelo

<%@page import="banco.operacoes"%>
<%@page import="funcoes.especializados"%>
<%@page import="funcoes.funcionalidades"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.io.PrintWriter"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.util.Date"%>
<%@ page info="- 2012"%>
<%@ page language="java"%>
<%@ page contentType="text/html"%>
<%@ page session="true"%>
<html>
<head>
<link rel="shortcut icon" href="resources/if.ico"> 
<title> exporta</title>
<meta http-equiv=content-type charset=ISO-8859-1 />
 <script language="javascript" type="text/javascript" src="javascript/jquery-1.4.1.js"></script>
  <style type="text/css">  
   @import url(styles.css);  
   .wfm { width:500px }
   .expand { width:30px;height:30px; }
   .collapse { width:30px;height:30px;display:none; }
  </style>
</head>
<body>
<div id="container">
<div id="nav"> 
 <ul>
  <h2><a HREF="index.jsp">Sair</a></h2>
 </ul>
</div>
<%
 String vUsuario    = (String) session.getAttribute("SessionUsuario");
 String vSenha      = (String) session.getAttribute("SessionSenha");
 String vEmpresa    = (String) session.getAttribute("SessionEmpresa");
 String vTabela	    = "ARQUIVO";
 String vFiltro     = (String) request.getParameter("txtPesquisa");
 String vCodUsuario = null;
 
 if (vUsuario != null){
 	vUsuario		 = vUsuario.toUpperCase(); 
 }
 
 if (vSenha != null){
	 vSenha		 = vSenha.toUpperCase(); 
 }

 if (vEmpresa != null){
	 vEmpresa		 = vEmpresa.toUpperCase(); 
 }
 
 session.setAttribute("SessionUsuario" , vUsuario);
 session.setAttribute("SessionSenha"   , vSenha);
 session.setAttribute("SessionEmpresa" , vEmpresa);
 session.setAttribute("SessionTabela"  , vTabela);
 
 operacoes op = new operacoes();
 op.setTabela("USUARIO");
 especializados esp = new especializados();
 vUsuario = vUsuario.toUpperCase();

 String vCondicao = " UPPER(NOM_LOGIN) = '"+vUsuario+"' AND UPPER(COD_SENHA) = '"+
									        vSenha+"'";  
 
 ResultSet vRs = op.realizaConsulta(esp.getCampos("USUARIO",vEmpresa),vCondicao,vEmpresa);
 
 
 int vConta = 0;
 String vSitAdmin = null;
 while(vRs.next()){
  
  vSitAdmin = vRs.getString("SIT_ADMIN");
  session.setAttribute("SessionNome" , vRs.getString("NOM_USUARIO"));
  vCodUsuario = vRs.getString("COD_USUARIO");
  vConta++;
 
 }
 
 SimpleDateFormat formataData = new SimpleDateFormat("MM/dd/yyyy");
 Date data = new Date();
 String vData = formataData.format(data);

 SimpleDateFormat formataHora = new SimpleDateFormat("HH:mm:ss");
 String vHora = formataHora.format(data); 
 

 String vColunas = "COD_LOG,COD_USUARIO,DATA_HORA,NOM_ASSUNTO";
 String vValores = "'0','"+vCodUsuario+"','"+vData+" "+vHora+"','"+vFiltro+"'";
 op.setTabela("LOG_ACESSO");
 op.realizaOperacaoString("I",vColunas,vValores,null,vEmpresa);
 
 vCondicao = " UPPER(NOM_ARQUIVO) LIKE UPPER('%"+vFiltro+"%')";
 op.setTabela(vTabela);
 vRs = op.realizaConsulta(esp.getCampos(vTabela,vEmpresa),vCondicao,vEmpresa);
 
 funcionalidades function = new funcionalidades();
 
 if (vConta >= 1){
%>
<!-- main content area -->
  <div id="sidebar">
      <!-- news headlines box -->
   <h2>Usuário : <strong><%=session.getAttribute("SessionUsuario").toString().toUpperCase() %></strong></h2>
   <ul class="news">
  <% if (vSitAdmin.equals("S")){ %>
		  <left><a HREF="usuario.jsp"><h6> Cadastro de Usuários</h6></a></left>
		  <left><a HREF="permissoes.jsp"><h6> Permissões de Usuários</h6></a></left>
		  <left><a HREF="cpu.jsp"><h6> Copia de Permissões</h6></a></left>
		  <left><a HREF="atualiza.jsp"><h6> Atualização do DB</h6></a></left>
          <left><a HREF="log.jsp"><h6> Log de acesso do Sistema</h6></a></left>		  
  <%} %>	
    	  <left><a HREF="pesquisa.jsp"><h6> Consulta de Arquivos</h6></a></left>
    </ul>	 
	<h2>Empresa</h2>   	
    <%=esp.getLogo(vEmpresa)%>
<%} else{ 
 response.sendRedirect("invalido.jsp"); 
}%>
<br>
<a href="exporta.jsp"><img src="resources/xls.png" heigth="25" width="25"></a><strong>&nbsp;Exportar</strong>
<%=function.getArvore(vRs,"NOM_ARQUIVO",vTabela,vEmpresa,vCodUsuario)%>
</div>
<!-- Rodape final  -->
<div id=footer>
	<div class=inner>
	 <div class=column>
	 <ul>
	  <li></li>
	 </ul>
	 </div>
	<div class=column left><span class=column>exporta - Todos os direitos reservados
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	                        powered by <a HREF=mailto:isael_junior@hotmail.com>I.F Soluctions</a></div>
	<br clear=all />
	</div>
</div> 
<script type="text/javascript" language="javascript">
        $(".expand").click(function () {
            $(this).toggle();
            $(this).next().toggle();
            $(this).parent().parent().children().last().toggle();
        });
        $(".collapse").click(function () {
            $(this).toggle();
            $(this).prev().toggle();
            $(this).parent().parent().children().last().toggle();
        });
</script>
</body>
</html>

o que gostaria de fazer, era ao clicar neste link, abrir uma janela pegindo onde salvar o arquivo.
Alguém sabe se e possivel fazer isso ?

grato,