Bonjour,

Je suis débutant en Java.

Avec Eclipse j'ai créé la classe "GeneratePDF.java" (qui au RUN fonctionne correctement : Création d'un PDF)

J'aimerais maintenant Exécuter cette fonction dans le code d'une JSP.

Que dois-je copier/déployer comme fichier et à quel endroit ?

Tomcat

version 5.5
Répertoire : "..Tomcat 5.5\webapps\testjsp"
JSP : java4.jsp
URL : http://localhost:8080/testjsp/java4.jsp

Eclipse

Projet : PRJ_TOMCAT1
Classe : GeneratePDF.java

Code de "GeneratePDF.java"
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
import java.sql.*;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
 
 
public class GeneratePDF {
 
    public static void main(String[] args) {
 
        // - Paramètres de connexion à la base de données
        String login = "prov_work";
        String password = "prov_work";
        Connection con =null;
        // 
        try 
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        } 
        catch(java.lang.ClassNotFoundException e) 
        {
            System.err.print("ClassNotFoundException (try): ");
            System.err.println(e.getMessage());
        }
           String dataSourceName = "DB_ODI";
           String url = "jdbc:odbc:" + dataSourceName;
           //
           try 
           {
               con = DriverManager.getConnection(url,login,password) ;
           }
            catch(SQLException sqle) 
           {
            System.err.println(sqle.getMessage());
        }
        //
        try 
        {
            // - Chargement et compilation du rapport
            JasperDesign jasperDesign = JRXmlLoader.load("D:\\Z_A_MOI\\ODI\\utils\\jasper_ireport\\iReport-1.2.5\\iReport-1.2.5\\rep1.jrxml");
            JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
            // - Paramètres à envoyer au rapport
            Map parameters = new HashMap();
            //parameters.put("Titre", "Titre");
            // - Execution du rapport
            JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, con);
            // - Création du rapport au format PDF
            JasperExportManager.exportReportToPdfFile(jasperPrint, "D:\\Z_A_MOI\\ODI\\utils\\jasper_ireport\\iReport-1.2.5\\iReport-1.2.5\\rep1.pdf");
 
 
        } catch (JRException e) 
        {
 
                    e.printStackTrace();
        } finally {
            try {
                 con.close();
                } catch (SQLException e) {
 
                        e.printStackTrace();
                }
        }
 
    }
}
Code de "java4.jsp"
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
 
<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<%@page import="GeneratePDF.class" %> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Exemple d'utilisation d'une classe dans une JSP</title> 
</head> 
<body> 
<h2> 
<% 
GeneratePDF ct = new GeneratePDF(); 
ct.main(null); 
%> 
</h2> 
</body> 
</html>
Merci pour votre aide