[AJAX] Webscript/HttpRequest recevoir réponse serveur
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:
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!