JSF+JasperReport

Olá pessoal, me ajudem.

Criei um relatório no iReport2.0.2 mais não consigo chamalo pela minha aplicação Web.

Qual seria o processo correto?.

Por favor me deem uma direção…de como utilizar em uma aplicação web com JSF. Estou usando o netBeans.

Help please

Está dando algum erro? Como está seu código?

Oi Carneiro.

A minha aplicação é para web…estou usando JSF.
Criei um Manager Bean…que a minha interface está chamando para gerar o relatório, passando dois paramentros.

código do Manager Bean.


/*
 * ActionRelatorio.java
 *
 * Created on December 5, 2007, 2:10 PM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package org.maternidade.sim.actions;

import com.sun.faces.application.ApplicationImpl;
..
..
..
/**
 *
 * @author vista
 */
public class ActionRelatorio extends HttpServlet{
    
    private static Connection con = null;
    private static String driver = "com.mysql.jdbc.Driver";
    private static String endereco = "jdbc:mysql://localhost/sim";
    private static String user = "root";
    private static String pass = "root";
    
    private java.util.Date dt_inicial;
    private java.util.Date dt_final;
    
    
    /** Creates a new instance of ActionRelatorio */
    public ActionRelatorio() {
    }
    
    public void gerarRelatorioParto(){
        
        // TODO code application logic here
        String reportSource = "C:/Application of Developed/IDEs/netbeans-5.5.1/workspace/WebSim/ireport/templates/partoRelatorio.jrxml";
        String reportDetal = "C:/Application of Developed/IDEs/netbeans-5.5.1/workspace/WebSim/ireport/results/partoRelatorio.pdf";
        
        Map<String,Object> params = new HashMap<String,Object>();
        params.put("data_inicio",getDt_inicial());
        params.put("data_fim",getDt_final());
        
        System.err.println("Data inicial: "+getDt_inicial());
        System.err.println("Data inicial: "+getDt_final());
        try{
            
            conexao();
           
            JasperReport jasperReport = JasperCompileManager.compileReport(reportSource);
            
            JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,params,con);
            
            JasperExportManager.exportReportToPdf(jasperPrint);
            
            JasperViewer.viewReport(jasperPrint);
            
            
            con.close();
            
        }catch(Exception e){
            System.err.println(e.getMessage());
        }
    }
    
    //Cria a conexao
    public void conexao(){
        
        try{
            if (con == null || con.isClosed()){
                Class.forName(driver);
                con = DriverManager.getConnection(endereco,user,pass);
            }
            
        }catch(Exception e){
            System.err.println("Não foi possível conectar ao banco ->");
            System.err.println(e.getMessage());
        }
    }
}

Quando eu mando ele gerar…ele gera a primeira fez…mais depois o tomcat e derubado, tudo para.

Qual seria a forma correta para gerar um relatório usando JSF, o que vc acha desta forma que esta ocorrendo.

Help carneiro.