我想在作业完成后显示一个弹出窗口。
我有servlet,它使用executor执行长作业。任务可能需要20分钟,当作业完成到任何jsp视图,此时用户是对的(会话),如何显示弹出?
例如,servlet作业中的用户提交表单提交给执行者,servlet发送一些响应并重定向到/view1,用户正在使用web的另一个模块(/view2 /view3等),当作业完成时,用户在页面中央的/viewX上弹出“您的任务超级任务已经完成”。
我知道这是可能的,因为这个机制是用Jira atlasian语言实现的,谢谢
发布于 2018-07-22 20:36:45
这个功能不应该在JSP或servlet中完成,您可以编写几行javascript,定期向服务器询问作业状态。当工作完成后,它应该会显示弹出窗口。如果出于任何原因,您喜欢在JSP中这样做,那么用户只有在刷新页面时才会弹出。
发布于 2018-07-22 20:50:19
您可以尝试使用JS来使用承诺。发送新的承诺,这是异步请求,当作业完成时,如果有问题,您将得到一个结果或错误。
请看一下https://codeburst.io/javascript-learn-promises-f1eaa00c5461 (或者只输入'js答应‘)
https://stackoverflow.com/questions/51454325
复制相似问题