我正在努力使用 GWT 2.4 + gwtupload 0.6.4 库进行简单的文件上传。
这是我的对话框 ui.xml 的相关部分:
<g:DialogBox modal="true" width="400px" height="150px">
<g:caption><ui:msg>Import new..</ui:msg></g:caption>
<g:VerticalPanel styleName="full-width">
<g:InlineLabel styleName="formlabel"><ui:msg>File name</ui:msg></g:InlineLabel>
<up:Uploader ui:field="uploader" validExtensions="zip" styleName="uploader full-width">
</up:Uploader>
<g:Button styleName="button" ui:field="importButton" enabled="true">
<ui:msg>Import</ui:msg>
</g:Button>
importButton
最终会调用 uploader.submit()
。我的问题是,我第一次按下按钮时,空的 POST 被发送到服务器,我收到一条错误消息。如果我第二次按下按钮,我的文件就可以正常发布了。如果我关闭对话框并重新开始,就会发生同样的事情。第一次之后的每次导入尝试都可以。
这是空的 POST 示例:
Content-Type: multipart/form-data;
boundary=---------------------------9003259118762
Content-Length: 46 -----------------------------9003259118762--
作为解决方法,我尝试再次单击该按钮。但是,如果我收到收到的错误消息并再次调用 uploader.submit()
或者甚至从 Timer()
回调中调用它,它就无法正常工作,因为当我点击鼠标第二次。
您知道什么地方可能出错吗?
最佳答案
解决方案是在 uploader.submit()
之后的某些行中有一个 uploader.setEnabled(false)
调用。删除它后 uploader 开始正常工作.. :-)
关于java - GWT 文件上传,文件未在 POST 中发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9907881/