Bonjour,
J'aimerai reccupérer un document XML envoyer depuis AJAX vers une servlet hebergé sur Tomcat. J'arrive à envoyer mon fichier et appelé mon servlet. Cependant je ne sais pas comment recupérer le fichier xml.
Voici mon code javascript qui envoi mon fichier XML:
Mon fichier est créer avant. La fonction "sendXmlFile" est appelé en premier qui appelle la fonction "envoyerRequete" et envoi le fichier XML en POST vers ma 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
39
40
41
42
43
44
45
46
47 // Méthodes permettant l'exécution d'une page sur un serveur //Envoi d'une requete HTTP //REnvoi la réponse HTTP function envoyerRequete(methode, action, headerName, headerValue, parametres) { dump("envoyerRequete(methode:" + methode + ", action:" + action + ", parametres:" + parametres + ") - IN\n"); try { var x = new XMLHttpRequest; dump("INFO: headerName: " + headerName + ", headerValue: " + headerValue + "\n"); if(methode == "POST"){ x.open(methode,action,false); x.setRequestHeader(headerName, headerValue); x.send(parametres); } else if(methode == "GET"){ x.open(methode,action + "?" + parametres,false); x.send(null); } if(x.responseXML == null) throw ""; } catch(e) { dump("envoyerRequete - Exception: " + e + "\n"); throw "serveur.connexionImpossible"; } dump("return " + x.responseXML + "\n"); dump("envoyerRequete(methode:" + methode + ", action:" + action + ", parametres:" + parametres + ") - OUT\n"); return x.responseXML; } /** * Envoie un fichier XML au serveur via AJAX */ function sendXmlFile(url, xml){ dump("sendXmlFile - IN\n"); try{ return envoyerRequete('POST', url, 'Content-Type', 'text/xml', xml); } catch(e){ dump("sendXmlFile - Exception: " + e + "\n"); throw e; } }
Voici le code de ma servlet:
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 package com.action.authentification; import java.io.BufferedReader; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class Authentification extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub doPost(req, resp); } /** * Methode appelé pour la connexion * 1) recupère les informations dans le fichier xml * 2) verifie les infos (login; mot de passe) * 3) créer une session si les informations sont correct * 4) affiche une reponse au format xml de type navigation si reussi sinon de type exception */ @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //Mon point d'entree est ici et je ne sais pas comment recupérer mon fichier XML } }
Partager