Invocar ireport

Bons dias campeões:
Gostava de vos colocar uma questão sobre como invocar um relatório usando o IREPORT.
Estou a fazer a invocação da seguinte forma.
Precisava era de uma coisa… Quando estou a chamar este relatório precisava que o resultado em vez de ser apresentado na mesma página fosse mostrado noutro.
Isto é possivel?

String query = request.getParameter(QUERY);
String outputFormat = this.getFormato();

if (outputFormat == null)
   outputFormat = IGReport.HTML.getExtension();
   String filename = request.getParameter(FILENAME);

   if (filename == null)
	filename = "report" + System.currentTimeMillis() + "."
			+ outputFormat;
	String disposition = request.getParameter(DISPOSITION);
	disposition = "attachment"; //inline ou attachment

	if (disposition == null)
		disposition = Ficheiro.DISPOSITION_ATTACHMENT;
		Principal user = request.getUserPrincipal();

		Map<String, Object> params = new HashMap<String, Object>();
		Enumeration en = request.getParameterNames();
		while (en.hasMoreElements()) {
			String key = (String) en.nextElement();
			params.put(key, request.getParameter(key));
		}


		params.put("util", user.getName());

		if (user == null) {
			response.sendError(HttpServletResponse.SC_UNAUTHORIZED);
			return;
		}
		if (this.getIdModelo() == 0) {
			response.sendError(HttpServletResponse.SC_NOT_FOUND);
			return;
		}

		try {
			IGReportGenerator rg = getReportGenerator();
			IGReport report = null;
			Connection con = null;
			// Criar a ligação
			try {
  			  con = this.dataSource.getConnection();

			  if (query == null || query.length() == 0)
			     report = rg.generateReport("" + this.getIdModelo(), params,
							con);
			} finally {
     			  if (con != null)
			     con.close();
			}

			// se
			if (report != null) {
				response.addDateHeader("expires", (new Date()).getTime());
				response.addHeader("Content-Disposition", disposition
						+ "; filename=" + filename);

				response.resetBuffer();
				OutputFormat format = report.getFormat(outputFormat);
				response.setContentType(format.getContentType());
				report.render(format, response.getOutputStream());
				response.flushBuffer();
			}

		} catch (Throwable e) {
			throw new QualaRuntimeException(e.getMessage(), e);
		}

	}