Bonjour,
je suis débutant en AJAX, et je cherche à faire communiquer une JSP (associée à une portlet) et une Servlet periodiquement. Pour cela j'utilise la fonction setInterval de JAvascript dans ma JSP, voici mon code :
...
<script type="text/javascript">
var req = <portlet:namespace/>getXMLReq();
function <portlet:namespace/>getXMLReq(){
var objXMLHttp=null
if (window.XMLHttpRequest){
objXMLHttp=new XMLHttpRequest()}
else if (window.ActiveXObject){
objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")}
return objXMLHttp
}
function <portlet:namespace/>_StartPoll(){
req = <portlet:namespace/>getXMLReq();
var url = "<%= request.getContextPath() %>/NGH2Servlet";
req.onreadystatechange = function(){<portlet:namespace/>_processPollReq();};
req.open("GET", url, true);
req.send("ajax=true");
}
function <portlet:namespace/>_processPollReq(){
if (req.readystate == 4 || window.XMLHttpRequest){
if (req.status == 200){
alert("status = 200 ");
var diags = req.responseXML.getElementsByTagName("diag");
alert(diags[1].firstChild.nodeValue);
}
}
}
setInterval("<portlet:namespace/>_StartPoll();",5000);
</script>
...
Malheureusement, j'ai l'impression que la fonction setInterval n'est jamais lancée, puisque ma servlet jamais invoquée, et pas de trace... Sinon la JSP marche bien puisque l'affichage qu'elle produit est correct.
J'ai utilisé ce même bout de code AJAX ds un autre cas de figure, ou il marchait tres bien...
Selon vous, d'ou pourrait venir le probleme?
Merci de votre aide.
Motorenshi.
Partager