Http JSF可恢复文件上传

Http JSF可恢复文件上传,http,jsf,file-upload,resume,Http,Jsf,File Upload,Resume,我想用JSF上传文件。我希望能够恢复上传后暂停(自愿或不)。 它们的大小约为500Mb 我正在使用PrimeFaces,它有一个整洁的FileUpload标签,但它不允许我暂停/恢复上传 我对此做了一些研究。最常见的答案是“使用FTP客户端”。其他的是Java小程序或Flash 它应该可以在当前的Firefox/Chrome和IE8上运行。确实不可能通过HTML元素恢复文件上传。也就是说,在多部分/表单数据编码中没有任何东西能够支持这一点。更重要的是,没有标准的表单编码规范支持这一点。您基本上需

我想用JSF上传文件。我希望能够恢复上传后暂停(自愿或不)。 它们的大小约为500Mb

我正在使用PrimeFaces,它有一个整洁的FileUpload标签,但它不允许我暂停/恢复上传

我对此做了一些研究。最常见的答案是“使用FTP客户端”。其他的是Java小程序或Flash


它应该可以在当前的Firefox/Chrome和IE8上运行。

确实不可能通过HTML
元素恢复文件上传。也就是说,在
多部分/表单数据
编码中没有任何东西能够支持这一点。更重要的是,没有标准的表单编码规范支持这一点。您基本上需要发明一种自定义HTTP请求格式

用Java术语来说,最好的办法是为此自制一个小程序或webstart应用程序,它使用Swing
JFileChooser
拾取文件,并使用
URLConnection
通过HTTP将其发送到服务器。在服务器端,您需要一个定制的
Servlet
,它可以理解定制请求格式并相应地处理部分上传

有一个第三方小程序可以实现这一切:。不幸的是,它的主页现在已经关闭(不过你可以试试谷歌缓存)。在这一点上,它会发送一些特定的HTTP请求参数以及
多部分/表单数据
上传请求,告诉服务器端它是否是部分上传,如果是,应该从哪个索引开始,这样servlet就可以将各个部分粘在一起

然后,为了将这一切与JSF集成,最好的办法是让小程序将会话ID作为URL路径片段传递,以便servlet与JSF应用程序共享相同的HTTP会话。通过这种方式,上传servlet可以访问会话范围内的JSF托管bean和/或JSF应用程序可以在HTTP会话中轮询某些特定于servlet的变量