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:

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;
	}
}
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.

Voici le code de 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
 
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
	}
}
Merci d'avance