客户端文件更改时更新JSP

时间:2013-04-30 22:24:40

标签: java javascript html5 jsp

我正在开展一个有两个部分的项目:

a)在客户端计算机上运行的Java应用程序。 b)托管在Web服务器上的Web应用程序。

Java应用程序在随机时间间隔后生成一些结果。这些结果需要反映在网页/ JSP上,使用javascript方法,每隔5秒就会说它是最新的。

你能否提出一些建议。

我相信java应用程序不需要向服务器端发送任何请求。相反,如果它可以写入JSP中的javascript方法将不断监视更改并使用内容更新JSP的本地文件,那么它就可以实现。但是我不知道这是否可行,如果可行,它是如何完成的。

此外,IE和Firefox都应支持WebApplication。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

使用javascript监视文件系统上的文件的方法不是可行的方法。如果你把任务分成两半会好得多:

1)一个简单的页面,显示当前文件。通过 setTimeout() -Function进行简单轮询就可以实现这一点 https://developer.mozilla.org/en-US/docs/DOM/window.setTimeout

通常以以下形式实施:

var myApp={};
var fiveSecondsInterval=5000;
var myApp.pollServer=function(){ setTimeOut(function(){ 
/* retrieve the current data */
if(conditionIsNotMet) myApp.pollServer();
}, fiveSecondsInterval)}

因此不满足某些条件,myApp.poll会以五秒钟的间隔自行调用。

2)服务器上用于保存数据的端点。因此,每次调用此端点时,页面都会提供文件的当前内容/数据。

更复杂的解决方案包括服务器推送技术 http://en.wikipedia.org/wiki/Push_technology

http://en.wikipedia.org/wiki/Reverse_Ajax

http://www.ibm.com/developerworks/web/library/wa-cometjava/