Java ajax在我的struts进度条上使用以前的结果

Java ajax在我的struts进度条上使用以前的结果,java,ajax,struts,progress,Java,Ajax,Struts,Progress,我通过ajax调用检索struts中已完成上传的百分比。在我第一次测试上传时,一切都很好,我的进程栏将从9%到22%到51%到90%到100%,然后下一页加载,应该说上传成功 问题是,如果我上传第二个文件,比如说两倍大的文件,它应该使用自己的完成百分比。但是它却抛出了9%,22%,51%,90%,100%,最后得到了它的真实百分比,比如说41%,然后达到45%,但是如果它达到51%(从第一次尝试开始),它会跳到90%,然后再次达到100% 如果每次浏览器正常工作时都关闭并重新打开浏览器,但如果每

我通过ajax调用检索struts中已完成上传的百分比。在我第一次测试上传时,一切都很好,我的进程栏将从9%到22%到51%到90%到100%,然后下一页加载,应该说上传成功

问题是,如果我上传第二个文件,比如说两倍大的文件,它应该使用自己的完成百分比。但是它却抛出了9%,22%,51%,90%,100%,最后得到了它的真实百分比,比如说41%,然后达到45%,但是如果它达到51%(从第一次尝试开始),它会跳到90%,然后再次达到100%


如果每次浏览器正常工作时都关闭并重新打开浏览器,但如果每次会话都上载一次以上,则会使用旧值。

听起来好像您没有在上载完成后清除会话中设置的数据


特别是,这是服务器端的一个问题。看起来旧文件大小会保留在会话中,并再次重新使用以计算百分比。只需在服务器端打印(或记录)文件大小的值,您就可以计算出来;)

我认为这是针对ajax缓存的

Send a random number when calling ajax.
对于jqueryajax的使用

cache: false

你好谢谢你的帮助。它肯定不是文件大小。我放了println,它们是不同的。我所有的东西都只作为请求范围,除了这个“完成百分比”。我甚至尝试从会话中删除属性,或者将其设置为null,但什么都不起作用。