Bonjour,

Je travaille actuellement sur une application web faite en Java EE.
On m'as demandé d'y ajouter un module, pour y traiter des informations.

J'ai du apprendre le Java EE (du coup, je suis encore ultra-novice)

J'ai fait mon projet sous Eclipse, et maintenant j'aimerais pouvoir l'ajouter à la application web déjà présente sur le serveur, sauf que j'ai vraiment du mal.

Ce que j'ai compris :

  • Je dois ajouter les liens vers mes servlets dans le fichier web.xml

Ce que je cherche à savoir :
  • Dans quels répertoires dois-je placer mes fichiers .class ou .java ?
  • À quel endroit ?

Ceci n'est pas un nouveau déploiement d'application, c'est juste un ajout sur une ancienne application.

Je mets ici le code de ma première page :
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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
<%@ page language="java"
    import="java.sql.*"
    contentType="text/html;charset=UTF-8"
%>
<%
    try {
      Class.forName("oracle.jdbc.driver.OracleDriver");
      System.out.println("Driver O.K.");
 
      String url = "jdbc:oracle:thin:@CHARYBDE.CG85.fr:1522:SIG";
      String user = "CG";
      String passwd = "CG85";
 
      //Connexion à la DB => ouverture
      Connection conn = DriverManager.getConnection(url, user, passwd);
      System.out.println("Connexion effective !");
 
        //Création d'un objet Statement
        Statement state = conn.createStatement();
%>
 
<html>
    <head>
          <link rel="stylesheet" href="./scripts/style.css" type="text/css">
        <title>Rapport</title>
    </head>
    <body>
    <h1>Définissez la cible du rapport</h1>
            <form class="marge" id="form" method="post" action="aiguilleur">
                <p>
                    <label for="type">Type de la cible :</label>
                    <select id="typeCible" name="TypeDeCible">
                        <option></option>
                        <option>Département</option>
                        <option>Arrondissement</option>
                        <option>Commune</option>
                        <option>Canton</option>
                    </select>
                </p>
                <p>
                    <label for="NomCible">Nom de la cible :</label>
 
                    <select id="nomCible" name="NomDeCible" disabled>
                    <option ></option>
                    </select>
                </p>
                <p>
                    <label for="type">Type d'information :</label>
                    <select id="typeInfo" name="TypeInformation" disabled>
                        <option></option>
                        <option>Démographie</option>
                        <option>Administratif et politique</option>
                        <option>Habillage</option>
                        <option>Cadastre</option>
                        <option>Secteur métiers</option>
                        <option>Équipement</option>
                        <option>Aménagement</option>
                        <option>Réseaux</option>
                        <option>Paysage et environnement</option>
                        <option>Activités</option>
                    </select>
                </p>
 
                    <input type="hidden" id="target" name="Target" value="123">
 
                    <div id="action">
                        <input id="envoi" type="submit" value="Envoyer" disabled>
                    </div>
            </form>
 
        <script type="text/javascript" charset="UTF-8">
        var ListArrondissement = {<%
                //L'objet ResultSet contient le résultat de la requète SQL
                ResultSet arrondissement = state.executeQuery("SELECT ID_ARRONDISSEMENT, NOM_ARRONDISSEMENT  FROM arrondissement ORDER BY NOM_ARRONDISSEMENT");
 
                //On récupère les MetaData
                ResultSetMetaData arrondissementMeta = arrondissement.getMetaData();
 
                int k = 0;//Cette valeur sert juste à mettre une condition pour ne pas ajouter de virgule avant la toute première ligne
 
                while(arrondissement.next())
                {   //Tant qu'il y a une ligne (ROW) suivante
                    int i = 0;
                    int j = arrondissementMeta.getColumnCount();
                    do{
                          if(k != 0)
                          {
                          out.print(",");
                          }
                          out.print(arrondissement.getInt(1)+":\""+arrondissement.getString(2)+"\"");
                              i++;
                              k++;
                          }
                    while(i>j);
 
                }
 
                arrondissement.close();%>};
 
        var listCommune = {<%
                //L'objet ResultSet contient le résultat de la requète SQL
                ResultSet commune = state.executeQuery("SELECT INSEE_COMMUNE, NOM_COMMUNE_MIN  FROM Commune ORDER BY NOM_COMMUNE_MIN");
 
                //On récupère les MetaData
                ResultSetMetaData communeMeta = commune.getMetaData();
 
                k = 0;//Cette valeur sert juste à mettre une condition pour ne pas ajouter de virgule avant la toute première ligne
 
                while(commune.next())
                {   //Tant qu'il y a une ligne (ROW) suivante
                    int i = 0;
                    int j = communeMeta.getColumnCount();
                    do{
                          if(k != 0)
                          {
                          out.print(",");
                          }
                          out.print(commune.getInt(1)+":\""+commune.getString(2)+"\"");
                              i++;
                              k++;
                          }
                    while(i>j);
 
                }
 
                    commune.close();%>};
 
        var listCanton = {<%
                //L'objet ResultSet contient le résultat de la requète SQL
                ResultSet canton = state.executeQuery("SELECT INSEE_CANT, NOM_CANTON  FROM Canton ORDER BY NOM_CANTON");
 
                //On récupère les MetaData
                ResultSetMetaData cantonMeta = canton.getMetaData();
 
                k = 0;//Cette valeur sert juste à mettre une condition pour ne pas ajouter de virgule avant la toute première ligne
 
                while(canton.next())
                {   //Tant qu'il y a une ligne (ROW) suivante
                    int i = 0;
                    int j = cantonMeta.getColumnCount();
                    do{
                          if(k != 0)
                          {
                          out.print(",");
                          }
                          out.print(canton.getInt(1)+":\""+canton.getString(2)+"\"");
                              i++;
                              k++;
                          }
                    while(i>j);
 
                }
                    canton.close();
                     %>};
        </script>
         <script type="text/javascript" src="./scripts/CmbBxDanse.js" charset="UTF-8"></script>
         <%
         //Fermeture de la connexion
         state.close();
         //Gestion des exeptions
        } catch (Exception e) {
            e.printStackTrace();
        } 
        %>
    </body>
</html>
Ensuite, cette page HTML (grâce à son formulaire) envoi sur un servlet :
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
import java.io.IOException;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
 
public class aiguilleur extends HttpServlet
{
 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 
        HttpSession session = request.getSession();
 
        String TypeCible = request.getParameter( "TypeDeCible");
        session.setAttribute("TypeCible", TypeCible);
 
        String NomCible = request.getParameter( "NomDeCible");
        session.setAttribute("NomCible", NomCible);
 
        String TypeInfo = request.getParameter( "TypeInformation");
        session.setAttribute("TypeInfo", TypeInfo);
 
        String target = request.getParameter("Target");
        session.setAttribute("target", target);
 
    if(TypeInfo.equals("Démographie"))
        {
            this.getServletContext().getRequestDispatcher("/Demographie/Edition.jsp").forward( request, response );
        }
    else
        {
            System.out.println("En construction");
            System.out.println(TypeInfo);
        }    
    }
}
Cette page envoi vers d'autres pages, en fonction des choix fait par l'utilisateurs sur la première page.

Et voici mon web.xml
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
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee" version="2.5">
  <servlet>
    <servlet-name>aiguilleur</servlet-name>
    <servlet-class>aiguilleur</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>aiguilleur</servlet-name>
    <url-pattern>/aiguilleur</url-pattern>
  </servlet-mapping>
 
  <filter>
    <filter-name>Set Character Encoding</filter-name>
    <filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
      <param-name>ignore</param-name>
      <param-value>false</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>Set Character Encoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>
Au cas où, je me permets de vous donner l'arborescence de l'application déjà présente jusqu'à l'endroit où je dois déposer mes fichiers JSP. (le dossier "Rapport")
Nom : 47601.png
Affichages : 56
Taille : 18,6 Ko
Merci d'avance pour votre aide et vos explications.

P.S : Je cherche à apprendre, si vous avez des cours ou des tutoriels, je suis preneur !

Je me permet un petit up, pour savoir si le message aurai au moins été lus par quelqu'un xD

Et aussi car je reste encore dans l'incompréhension de ce mécanisme.