Bonjour,

Je souhaite appeler un webscript (backed bean java) par le biais d'une page html tout simple. J'utilise httpRequest méthode POST pour envoyer un fichier xml à mon webscript. Ce dernier le reçoit bien et exécute le code approprié côté serveur. Jusqu'ici pas de problèmes.

Mon webscript est décris par un fichier .xml et par un fichier réponse .ftl (accusé de reception par exemple).

Le problème est que je ne reçois pas côté client (html) la réponse (.ftl) même si le fichier xml est bien envoyé. Mon code "readyState" reste bloqué à 1.

Voici mon code html/javascript côté client :

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
<html>
	<head>
	<script type='text/JavaScript'>
 
		function getXhr(){
                           var xhr = null; 
			   var xdoc;
 
			   if( window.ActiveXObject && /Win/.test(navigator.userAgent) )
			   {
				  xdoc = new ActiveXObject("Microsoft.XMLDOM");
 
				  xdoc.async = false;
				  xdoc.load("C:/data.xml");
 
			   }
			   else if( document.implementation && document.implementation.createDocument )
			   {
				  xdoc = document.implementation.createDocument("", "", null);
				  xdoc.load("C:/data.xml");
			   }
 
				if(window.XMLHttpRequest){  // Firefox et autres
				   xhr = new XMLHttpRequest(); 
				}
				else if(window.ActiveXObject){ // Internet Explorer 
				   try {
			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
			            } catch (e) {
			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
			            }
				}
				else { // XMLHttpRequest non supporté par le navigateur 
				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
				   xhr = false; 
				} 
 
				var dataToSend=xdoc;
 
			  xhr.open("POST","http://localhost:8080/service/bean", true); 
              xhr.setRequestHeader("Content-Type", "text/xml");                  
              xhr.send(dataToSend); 
			  xhr.onreadystatechange =function()
              {
				alert(xhr.readyState);
					 if (xhr.readyState == 4) {
					alert("Post successful");
					}
              }
 
}
 
</script>
	</head>
	<body>
 
			<form  method="post">
				identifiant : <input name="idcomm"><br />
				date : <input name="date"><br />
				description : <input name="desc"><br />
				version : <input name="version"><br />
				flux : <input name="flux"><br />
				système emetteur : <input name="emetteur"><br />
				système destinataire : <input name="dest"><br />
				<input type="submit" name="submit" value="Go" onclick='getXhr()'>
			</form>			
	</body>	
</html>
Merci d'avance pour vos réponse!