У меня есть html-страница, которая делает периодические вызовы AJAX сервлету каждые 4 секунды.В сервлете я записываю некоторую информацию в файл и печатаю некоторые операторы, используя System.out.println ()
Однако записи в файл и операторы печати печатаются только один раз.Разве это не должно происходить каждый раз, когда моя страница отправляет запрос AJAX?
Вот код AJAX:
$(document).ready(function() {
setInterval(function(){
$.get('Poller',
function(responseText) {
alert("response received: "+responseText);
var obj=jQuery.parseJSON(responseText);
$("div#key1").text("a");
$("div#val1").text(obj.Server1);
$("div#key2").text("b");
$("div#val2").text(obj.Server2);
$("div#key3").text("c");
$("div#val3").text(obj.Server3);
$("div#key4").text("d");
$("div#val4").text(obj.Server4);
setTimeout(function(){
},1500);
responseText="";
alert("response text now: "+responseText);
});
},4000);
});
А вот код моего файла сервлета:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("new call");
//code write to file
}
В документации сервлета сказано, что метод service ()вызовет функцию doget () только для первого запроса от клиента.Из-за этой проблемы doget () вызывается только один раз, а не каждые 4 секунды?