IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Documents Java Discussion :

afficher des etats ireports dans une appli jsf


Sujet :

Documents Java

  1. #1
    Membre régulier
    Inscrit en
    Août 2005
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 159
    Points : 97
    Points
    97
    Par défaut afficher des etats ireports dans une appli jsf
    Bonjour.
    Je ne sais pas si je poste dans le bon forum mais j'ai besoin d'aide
    Actuellement, je travaille avec jsf et je suis charge du developpement des pages web et un autre collegue lui s'occupe du développement des états.
    Jusque la tout va bien.
    Mais c'est dans l'intégration des etats que ca crame. Au niveau du poste du collegue tout va bien, les etats s'affiche. Mais lorsque j'essaie d'integrer les etats dans mon appli, l'integration est bien, mais lorsque je clique sur le bouton editer rien n'est fait; en deboguant je vois que tout se deroule bien mais rien ne s'affiche, aucune erreur et aucun n'affiche.

    Quelqu'un pourrait m'aider a resoudre ce probleme.

    Voici la classe que nous utilisons pour afficher nos etats

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
     
    // Source File Name:   JasperCallFactory.java
     
    package jasper.factory;
     
    import java.io.File;
    import java.sql.Connection;
    import java.util.HashMap;
    import java.util.Map;
    import javax.servlet.ServletOutputStream;
    import javax.servlet.http.HttpServletResponse;
    import net.sf.jasperreports.engine.*;
    import net.sf.jasperreports.engine.export.*;
    import net.sf.jasperreports.engine.xml.JRXmlLoader;
     
    public class JasperCallFactory
    {
     
        public JasperCallFactory(Connection jdbcConnection1, String format)
        {
            this.format = null;
            parameters = null;
            jdbcConnection = jdbcConnection1;
            this.format = format;
        }
     
        public void showInBrowser(File fichier, HttpServletResponse out)
        {
            try
            {
                ServletOutputStream out2 = out.getOutputStream();
                net.sf.jasperreports.engine.design.JasperDesign jasperDesign = JRXmlLoader.load(fichier);
                net.sf.jasperreports.engine.JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
                net.sf.jasperreports.engine.JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, jdbcConnection);
                if(format == null)
                {
                    out.setContentType("application/pdf");
                    out.setHeader("Content-disposition", "filename=etat.pdf");
                    JRPdfExporter exporter = new JRPdfExporter();
                    exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
                    exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out2);
                    exporter.exportReport();
                } else
                if(format.equalsIgnoreCase(PDF_FORMAT))
                {
                    out.setContentType("application/pdf");
                    out.setHeader("Content-disposition", "filename=etat.pdf");
                    JRPdfExporter exporter = new JRPdfExporter();
                    exporter.setParameter(JRPdfExporterParameter.JASPER_PRINT, jasperPrint);
                    exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out2);
                    exporter.exportReport();
                } else
                if(format.equalsIgnoreCase(HTML_FORMAT))
                {
                    out.setContentType("text/html");
                    out.setHeader("Content-disposition", "filename=etats.html");
                    JRHtmlExporter exporter = new JRHtmlExporter();
                    exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
                    exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out2);
                    exporter.exportReport();
                } else
                if(format.equalsIgnoreCase(RTF_FORMAT))
                {
                    out.setContentType("application/ms-word");
                    out.setHeader("Content-disposition", "filename=etat.rtf");
                    JRRtfExporter exporter = new JRRtfExporter();
                    exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
                    exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out2);
                    exporter.exportReport();
                } else
                if(format.equalsIgnoreCase(EXCEL_FORMAT))
                {
                    out.setContentType("application/ms-excel");
                    out.setHeader("Content-disposition", "filename=etat.xls");
                    JRXlsExporter exporter = new JRXlsExporter();
                    exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
                    exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out2);
                    exporter.exportReport();
                }
                out2.flush();
                out2.close();
            }
            catch(Exception ex)
            {
                String connectMsg = (new StringBuilder("Ne peut creer le stream du report")).append(ex.getMessage()).append(" ").append(ex.getLocalizedMessage()).toString();
                System.out.println(connectMsg);
            }
        }
     
        public Connection getJdbcConnection()
        {
            return jdbcConnection;
        }
     
        public void setJdbcConnection(Connection jdbcConnection)
        {
            this.jdbcConnection = jdbcConnection;
        }
     
        public String getFormat()
        {
            return format;
        }
     
        public void setFormat(String format)
        {
            this.format = format;
        }
     
        public Map getParameters()
        {
            return parameters;
        }
     
        public void ajouterParametre(String nom, Object valeur)
        {
            if(parameters == null)
                parameters = new HashMap();
            parameters.put(nom, valeur);
        }
     
        public void setParameters(Map parameters)
        {
            this.parameters = parameters;
        }
     
        private Connection jdbcConnection;
        private String format;
        private Map parameters;
        public static String PDF_FORMAT = "pdf";
        public static String HTML_FORMAT = "html";
        public static String RTF_FORMAT = "html";
        public static String EXCEL_FORMAT = "html";
     
    }

    Un exemple d'appel d'un etat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
        public String GenererEtat() throws FileNotFoundException, 
                                           ServiceLayerException {
     
                // - Paramètres de connexion à la base de données
                       String url = "jdbc:mysql://localhost/ciospbBD";
                       String login = "root";
                       String password = "";
                       Connection connection = null;
                      File fichier =null;
     
                       try {
                // Recherche des choix ds la bd
     
                         messageError.setValue("");
                         if (!valideAnnee()) 
                         return null;                      
     
     
                         // - Connexion à la base
                           Driver monDriver = new com.mysql.jdbc.Driver();
                           DriverManager.registerDriver(monDriver);
                           connection = DriverManager.getConnection(url, login, password);
                           JasperCallFactory jasper=new JasperCallFactory(connection,JasperCallFactory.PDF_FORMAT);
     
                           HttpServletResponse response=(HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
                           ServletContext context=(ServletContext)FacesContext.getCurrentInstance().getExternalContext().getContext();
     
                            String etatChoix = (String)comboChoix.getLocalValue();
     
                            if ((etatChoix.trim().compareTo("DBE")==0)){
                                fichier=new File(etatDBE(context,jasper)) ;
                            }else if ((etatChoix.trim().compareTo("DBES")==0)){
                                fichier=new File(etatDBESisucces(context,jasper)) ;
                            } else if ((etatChoix.trim().compareTo("RNDS")==0)){
                                fichier=new File(etatRNDS(context,jasper)) ;
                            } else if ((etatChoix.trim().compareTo("RNDSS")==0)){
                                fichier=new File(etatRNDSSisucces(context,jasper)) ;
                            }else if ((etatChoix.trim().compareTo("DEA")==0)){
                                fichier=new File(etatDEA(context,jasper)) ;
                            }
     
                                 //    File fichier=new File(typeEtat(context,jasper)) ;
                                 jasper.showInBrowser(fichier,response);
                                 try {
                                      connection.close();
                                     } catch (SQLException e) {
     
                                        e.printStackTrace();
                                     }
     
                         }  catch (SQLException e) {
     
                               e.printStackTrace();
                           } catch (DataAccessLayerException e) {
                        // TODO
                    } finally {
     
                           }
     
              return "";
        }
    Je vous informe que sur le poste du collegue tout marche.

    Pour information, j'utilise ces technologie :
    ajax4JSF
    Myfaces
    Hibernate
    ireport 1.1

  2. #2
    Membre habitué
    Profil pro
    Analyste programmeur
    Inscrit en
    Novembre 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Analyste programmeur

    Informations forums :
    Inscription : Novembre 2006
    Messages : 197
    Points : 167
    Points
    167
    Par défaut
    bonjour,

    je vais la meme chose que toi.

    normalement tu pose ta question sur le forum de ireport.

    bon chance

Discussions similaires

  1. Afficher des sous-requêtes dans une requête
    Par ZashOne dans le forum Sql*Plus
    Réponses: 6
    Dernier message: 16/04/2008, 10h07
  2. Réponses: 4
    Dernier message: 01/06/2007, 19h15
  3. Afficher des éléments HTML dans une WindowsForm
    Par flagadda dans le forum Windows Forms
    Réponses: 3
    Dernier message: 16/04/2007, 17h31
  4. Afficher des balises HTML dans une chaine javascript
    Par lapaupiette dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/03/2007, 10h19
  5. Réponses: 3
    Dernier message: 21/11/2006, 09h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo