我用GWT 1.7编写了应用程序。我有一个页面,我将文件上传到不同域上的远程服务器。所以,当我发布服务器文件发送到服务器但是到了获得响应的时候我在以下函数中得到null:
的Servlet
...
resp.setStatus(HttpServletResponse.SC_CREATED);
resp.getWriter().print("The file was created successfully.");
resp.flushBuffer();
...
GWT:
form.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() {
public void onSubmitComplete(SubmitCompleteEvent event) {
Window.alert(event.getResults());
}
event.getResults()的Javadoc表示如下:
返回:结果html,如果是,则返回null 读它时出错了@tip The 结果html可以为null 将表单提交给其他人 域。
This is the code example我试图效仿。它按原样工作,但是当我调用我的servlet时,响应为空。
顺便说一下,我尝试使用Firebug来查看Headers,在我看来servlet正在发送响应。我认为这只是GWT不喜欢它。有没有解决这个问题所以我可以在GWT中得到我的回复?
由于
答案 0 :(得分:4)
不要说明显而已,但它在你发布错误的引文中说得对:
由于将表单提交到其他域,结果html可以为null。
您链接的代码示例似乎位于同一个域中,因此它不会违反浏览器的相同原始策略。
有this workaround但它似乎适用于早期版本的GWT,仅适用于Firefox。