[英]GWT - HTTPServlet POST Request not called
我希望仍然有一些GWT開發人員...我是GWT開發的新手,我正在嘗試做一個基於表單的文件上傳系統。 為此,我實現了一個HTTPServlet並覆蓋了doPost方法。 但是,當我提交表單時,我確實收到沒有任何內容的回復200。 但是,如果您在下面查看我的文件,我將發送500響應...並且System.out.println沒有被調用...
我在網絡上瀏覽了很多已經問過的問題,但是找不到解決方案...
這是我擁有的文件:
web.xml
<servlet>
<servlet-name>fileupload</servlet-name>
<servlet-class>com.myCompany.FileUpload
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>fileupload</servlet-name>
<url-pattern>/myModule/fileupload</url-pattern>
</servlet-mapping>
FormPresenter.java (我正在使用MVP體系結構)
formPanel.setAction(GWT.getModuleBaseURL() + "fileupload");
formPanel.setEncoding(FormPanel.ENCODING_MULTIPART);
formPanel.setMethod(FormPanel.METHOD_POST);
FileUpload.java (Servlet文件)
@RemoteServiceRelativePath("fileupload")
public class FileUpload extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("FileUpload doPost");
resp.sendError(500);
}
}
Form.ui.xml
<g:FormPanel ui:field="formPanel">
<g:VerticalPanel>
<g:FileUpload ui:field="fileUpload"></g:FileUpload>
</g:VerticalPanel>
</g:FormPanel>
謝謝你的幫助 !
孝燦
刪除@RemoteServiceRelativePath("fileupload")
。 您已經在web.xml中設置了映射。
哦,我實際上在我的代碼中發現了問題……我有一個使用通用網址格式定義的過濾器
web.xml
<filter-mapping>
<filter-name>myFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
在我的servlet之前被調用,但我忘了使用:
MyFilter.java
chain.doFilter(request, response);
調用其余的過濾器和servlet ...
謝謝您對Andrei的幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.