Bonjour à tous,
Voilà j'ai enfin terminer mon projet il fonctionne nickel et j'arrive à générer mes document avec jaspertreport et iReports
par contre j'ai un "bug" que je n'arrive pas à comprendre et à résoudre
une fois que je lance la méthode pour générer mon pdf, il me le génère bien mais après si je regarder dans ecplise j'ai mon tomacat qui est stoper, je dois donc re lancer le projet aussi non il ne fonctionne plus.
avez vous déjà eu le cas, avez vous une piste pour résoudre cela ?
je vous met en annexe le code de ma classe
Encore merci à tous,
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 /** * Méthode permettant la création et la génération de lettre au format pdf * pour toute les services qui peuvent fournir une ou plusieurs ressources * * @param id * id du registerForm en cours de traitement * @author Lemaitre Rudy */ public Boolean printResources(String idForm) throws SQLException { JasperDesign jasperDesign = null; JasperReport jasperReport = null; JasperPrint jasperPrint = null; File file = null; Boolean validationPdf=false; Boolean validationSql=false; // chargement et compilation du rapport try { log.debug("Chargement du template : " + Constant.templates + "en cour"); jasperDesign = JRXmlLoader.load(Constant.templates); log.debug("Chargement du template réussi"); jasperReport = JasperCompileManager.compileReport(jasperDesign); log.debug("Chargement du template dans le compilateur : ok"); // paramètres à envoyer au rapport Map parameters = new HashMap(); parameters.put("id", idForm); // execution du rapport jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, DbConnection.getInstance()); log.debug("Execution du rapport"); // création du rapport au format pdf // Création du format de la date pour le répertoire SimpleDateFormat dateFormatDirectory = new SimpleDateFormat("yyyy"); String dateDirectory = dateFormatDirectory.format(new Date()); // Création du format de la date pour le fichier SimpleDateFormat dateFormat = new SimpleDateFormat( "yyyy_MM_dd-HH-mm-ss"); String date = dateFormat.format(new Date()); // au besoin on creer le dossier principal des archive et le sous // dossier qui correspond à l'année en cour new File(Constant.dossierUplaod + dateDirectory).mkdirs(); // on donne le chemin d'écriture au fichier ainsi que sont nom // et on le met dans l'année en cours file = new File(Constant.dossierUplaod + dateDirectory, idForm + "_" + "Lettre" + "_" + date + ".pdf"); //Affiche le document à l'utilisateur JasperViewer.viewReport(jasperPrint); // Création du pdf JasperExportManager.exportReportToPdfFile(jasperPrint, file.getAbsolutePath()); log.debug("Génération du pdf en cours"); //opération réussie alors on dit youpie :) validationPdf=true; } catch (JRException e) { e.printStackTrace(); } finally { DbConnection.closeConnection(); log.debug("Déconnexion effectuée"); log.debug("document générer"); } if(validationPdf){ // on écrit les informations de l'upload dans la db AddDocumentLinkDAO documentLink = new AddDocumentLinkMySqlImpl(); try { documentLink.addDocumentLink(idForm, file.getName(), file.getAbsolutePath()); log.debug("Lien physique du fichier ajouter en base de données"); // on valide pour la valeur de retour; validationSql = true; } catch (Exception e) { log.error("Impossible d'ajouter le lien physique du document en base de données"); e.printStackTrace(); } } return validationSql; }
Partager