вызвать метод Java Servlet doGet из кода JavaScript - PullRequest
0 голосов
/ 15 февраля 2012

Я хочу спросить, какой код мне нужно написать, чтобы вызвать doGet () в сервлете Java. Прямо сейчас код, который я написал:

function(){
            var sURL = getUniqueSid("http://localhost:8080/Test/Sample?F=" + f + "&FB=" + fb);
            var ret = xmlSyncHttpReq(sURL);
            if (ret){
                var params = new GG_ContainerParams("General");
                var xTarget = params.dataSource;
                var xElms = ret.selectNodes("Param");
                for (var i=0;i<xElms.length;i++){
                    var x = xElms(i).cloneNode(true);
                    var chk = xTarget.selectSingleNode("Param[@Name = \"" + x.getAttribute("Name") + "\"]");
                    if (chk)xTarget.replaceChild(x,chk);
                    else xTarget.appendChild(x);
                    params.redraw();
                }
            }

function xmlSyncHttpReq(sURL,xmlSend,doThrow){
try{
    var xmlhttp = new  XMLHttpRequest();//ActiveXObject("Microsoft.XMLHTTP");
    sURL = getUniqueSid(sURL);
    xmlhttp.Open("GET", sURL, false);
    xmlhttp.setRequestHeader("Content-Type", "text/xml");
    if (typeof(xmlSend) == "object" && xmlSend != null)xmlSend = xmlSend.xml;
    xmlhttp.Send(xmlSend);  
    if(xmlhttp.responseXML.documentElement){
        if (checkErrors(xmlhttp.responseXML))return false;
        else return  xmlhttp.responseXML.documentElement;
    }
    xmlhttp = null;
    return false;
}catch(e){
    if (doThrow)throw e;
    else alert(e.description);
    return false;
}
}

Спасибо заранее, Таль Черниховский.

1 Ответ

0 голосов
/ 17 февраля 2012

Обратите внимание на консоль JavaScript в браузере. Вы должны были увидеть следующую ошибку:

Uncaught TypeError: Object #<XMLHttpRequest> не имеет метода 'Open'

JavaScript следует соглашениям об именах Java, а не соглашениям C # по именованию. Методы начинаются со строчной буквы. Вам нужно использовать open() и send() вместо Open() и Send().

Смотри также:

...