GWT 2.5.0 DevMode
沒有提交請求派出的GWT文件上傳
我對下面file upload
一個簡單的測試,
startupUrl:http://127.0.0.1:8888/UploadTest.html?gwt.codesvr=127.0.0.1:9997
<g:FormPanel ui:field="fpUpload">
<g:VerticalPanel>
<g:FileUpload name="fileData" ui:field="fuUpload" />
<g:Button ui:field="btUpload">Upload</g:Button>
</g:VerticalPanel>
</g:FormPanel>
@UiHandler("btUpload")
public void onClickUploadButton(ClickEvent e) {
System.out.println("fileName:" + fuUpload.getFilename());
fpUpload.setEncoding(FormPanel.ENCODING_MULTIPART);
fpUpload.setMethod(FormPanel.METHOD_POST);
fpUpload.setAction("/files");
fpUpload.submit();
System.out.println("Submitted, please wait!");
}
@UiHandler("fpUpload")
public void onSubmitComplete(SubmitCompleteEvent event) {
System.out.println("Submit completed!");
}
輸出:
fileName:C:\fakepath\one_file_chosen_to_upload
Submitted, please wait!
但是,服務器沒有收到submit request
,所以「提交完成!」從未出現過。
同時,流量被窺探到,submit request
根本沒有發出。
$ tcpdump -A -i lo port 8888
也沒有引發異常。任何想法?
@EDIT
的問題是ProdMode
重複性。
@EDIT 2
後只是重新啓動機器,現在這個問題似乎消失了一樣默默地爲http submit request
被忽略發出過線。不幸的是,我沒有線索爲什麼。
任何在devmode日誌? '/ files'上下文/ servlet是否存在?在那裏嘗試一個斷點? –
是的,我確實進入了'FormPanel#submit',但幾乎找不到任何有益的東西。什麼可以阻止客戶端發送'http submit request'本身,調用'FormPanel#submit'並且當c/s之間的網絡連接(tcp socket)持續時。 – sof
而且,'/ files'上下文/ servlet處於等待提交請求的狀態。 – sof