4

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 がサーバーに送信され、エラー メッセージが返されることです。ボタンを 2 回押すと、ファイルが適切に POST 処理されます。ダイアログを閉じて最初からやり直すと、まったく同じことが起こります。最初のインポートに続くすべてのインポート試行は問題ありません。

空の POST の例を次に示します。

Content-Type: multipart/form-data;
boundary=---------------------------9003259118762
Content-Length: 46 -----------------------------9003259118762--

回避策として、ボタンをもう一度クリックしてみました。ただし、受信したエラーメッセージをキャッチしてuploader.submit()再度呼び出すか、コールバックからでも呼び出すとTimer()、2回目にマウスでクリックしたときのように機能しません。

何が間違っている可能性がありますか?

4

1 に答える 1

1

解決策は、呼び出しuploader.submit()があった後のいくつかの行です。uploader.setEnabled(false)それを削除した後、アップローダーは正常に動作し始めました.. :-)

于 2012-03-29T11:11:52.950 に答える