Bonjour,

Dans le cadre d'un TP je dois faire un webemail complet (pouvoir choisir le dossier, récupérer la liste des mails , chosir un email et l'afficher...

voilà le code avec le quel j'arrive à me loger mais j'arrive pas a créer mes dossiers(INBOX, INBOX.Brouillons,INBOX.mondossier...), est ce quelqu'un pourra m'aider à le faire SVP

Merci d'avance
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
 
<html>
<head>
<title>Webmail</title>
<meta http-equiv="Content-Type" Content="text/html; charset=utf-8">
</head>
<body>
<%//les imports%>
<%@ page import="java.net.UnknownHostException"%>
<%@ page import="java.net.Socket"%>
 
<%@ page import="java.io.IOException"%>
<%@ page import="java.io.PrintStream"%>
<%@ page import="java.io.DataInputStream"%>
 
<%@ page import="java.util.regex.*"%>
<%@ page import="java.util.Vector"%>
 
<%
//Les données du formulaire sont stockées dans une sorte de bean qui sera accessible avec la variable data
%>
<jsp:useBean id="data" class="imap.ImapBean" scope="session"/> 
<jsp:setProperty name="data" property="*"/>
 
<%
 
if(data.getUsername()==null)
{
 
    //
        // On récupère d'abord le login et le mot de passe de l'utilisateur à
        // l'aide d'un formulaire HTML
    //
    %>
    <FORM METHOD="post">
 
    <table>
    <tr>
        <td>What's your username? <INPUT TYPE="text" NAME="username" SIZE="20"></td>
        <td>What's your password? <INPUT TYPE="password" NAME="password" SIZE="20"></td>
        <!--bien noter le = sur le tag d'ouverture du code java-->
        <td>What's your server URL? <INPUT TYPE="text" NAME="url" SIZE="20" value="<%= data.getUrl()%>"></td>
    </tr>
    <tr>
    <td><INPUT TYPE="submit" value="Let's go !"></td>
    </tr>
    </table>
    </form>
    <%
}
else if(request.getParameter("dossier")==null)
{
    //
    // On récupère ensuite la liste des dossiers
    //
 
    // System.out.println va directement dans le fichier logs/catalina.out
    System.out.println("Connecting to "+data.getUrl()+" with "+data.getUsername()+"/"+data.getPassword()+"<br>");
    Socket s = new Socket(data.getUrl(), 143);
    PrintStream sortie = new PrintStream(s.getOutputStream());
    DataInputStream entree  = new DataInputStream(s.getInputStream());
    String received = entree.readLine();
    System.out.println(received);
 
    //est ce que le serveur a bien répondu ?
    if(Pattern.matches("^. OK .* server ready$", received))
    {
         // out.println va dans le navigateur
        out.println("On est bien connecté maintenant on peut envoyer nos identifiants et récupérer la liste des dossiers");
        // TODO envoyer les identifiants et mots de passe
        // on va dire pour l'instant que l'on a 5 dossiers d1 à d5
        for(int i=0;i<5;i++) {
            %>
            <form method="post">
            <div><INPUT TYPE="submit" value="<%="d"+i%>"></td>
            <INPUT type="hidden" name="dossier" value="<%="d"+i%>"></td></div>
            </form>
            <%
        }    
 
        sortie.println("A0006 LOGOUT");
        received = entree.readLine();
        System.out.println(received);
        received = entree.readLine();
        System.out.println(received);
        if(Pattern.matches("^A0006 OK.*$", received))
        {
            s.close();
        }
        else
        {
            out.println("Problem when disconnecting from the server");
        }
    }
    else
    {
        out.println("Problem when connecting to the server");
    }
} 
else
{
    //
    // request.getParameter("dossier") contient un nom de dossier à ouvrir
    //
 
    out.println("<div>clic sur le dossier "+request.getParameter("dossier")+"</div>");
    //TODO faire afficher les en-têtes des messages
 
    out.println("Faire afficher le contenu des messages...");
}
 
%>
 
</body>
</html>