更新:
事实证明,inputFile中有一个ajax调用会导致上传过早。在点击实际提交按钮之前,ajax应该处理所选文件,但是我和在我之前编码它的人都知道它会表现得那样。而且,由于我们只在本地或小文件中测试它,我们从未注意到这个问题。
在文件上传方面,我是新手,我需要一些关于该主题的指导 我有一个通过h:inputFile获取文件的代码然后,当按下提交按钮时,使用InputStream和OutputStream以非常标准的方式将其发送到服务器。它运作良好,但我遇到了一个问题:
当我选择文件时,它会花时间上传到页面(?)。然后,当我单击提交按钮时,它会再次花时间将该文件发送到服务器 为了使自己清楚,这是一个真实的案例:我点击了inputFile按钮并选择了一个50mb的文件。花了10分钟得出结论。然后,我点击了提交按钮,再用10分钟将其发送到服务器。上传该文件总共需要20分钟,而它应该只有10分钟。
节省时间对我的用户来说至关重要,因为他们的互联网速度很慢(<1mbps),他们将上传大约40-90mb的视频,这需要几个小时。
那么,我该如何优化呢?并且,正如我已经问过的那样,h:inputFile究竟是如何工作的 - 我的意思是,它在bean中设置了Part,然后可以处理它,但是它是否真的立即上传了文件?
我正在使用JSF 2.2.7和GlassFish 4.
(对不起,我没有发布代码,但我认为没有必要。如果不是这样,请告诉我。)