这就是现在发生的事情
使用jquery Ajax调用服务器端Servlet代码
使用线程从远程位置读取属性文件并将其写入Servlet响应对象的Servlet代码。
我希望Ajax调用等待线程完成其任务。我尝试在方法时使用JQuery但是没有调用它(使用jquery版本2+)。
$.when(loadProperty()).done(function(a1){
alert('load proeprty finished :'+a1);
});
function loadProperty(){
var webappName = $('#webapps').val();
var proeprty_type = $( "#property_type option:selected" ).text();
$("#property_table").empty();
$.ajax({
url: "UDEPropertyManager?mode=getProperty",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
dataFilter: function(data) { return data; },
success: function(data) {
}
});
}
答案 0 :(得分:0)
同样,永远不要直接在servlet中运行线程,在你的情况下它完全没有意义。
新线程意味着,新工作应该异步启动。这意味着当你运行一个新线程时,servlet继续工作并响应客户端,这可以比新线程初始化更早完成。
您可能无法为此案例运行新主题。
如果结果/消息准备就绪,那么尽快响应它,客户端就会得到它。
您可以阅读有关servlet上下文和线程的更多信息。一个不是简单地在servlet上下文中以这种方式运行线程