【问题标题】:SendRedirect inside GWT RPC doesnt work with jspGWT RPC 中的 SendRedirect 不适用于 jsp
【发布时间】:2011-10-07 16:45:30
【问题描述】:

我有 GWT RPC 服务,我正在我的 RemoteServiceServlet 中做这样的事情:

this.getThreadLocalResponse().sendRedirect("http://127.0.0.1:8888/myapp/errorServlet");

这有效,但是当我尝试重定向到 jsp 页面 (http://127.0.0.1:8888/ErrorPage.jsp) 时没有任何反应。 (没有错误) 我的网址是 100% 正确的。

我也试过了

getServletConfig().getServletContext().getRequestDispatcher(URL).forward(request,response);

但结果是一样的。

请帮忙

【问题讨论】:

    标签: jsp gwt servlets redirect rpc


    【解决方案1】:

    GWT-rpc 响应不能是 HTML - 它必须是正确的 RPC 响应。我认为您会收到一个错误,该错误在您的 GWT 代码中被忽略 - 如果您使用的是开发模式,请检查 AsyncCallback 的 onFailure 方法或 GWT 日志;如果您正在尝试生产模式,请检查 javascript 控制台。

    【讨论】:

    • 你说得对,我遇到了 onFailure。那么有什么方法可以从 GWT 中的服务器端使用 POST 重定向?
    • 不,客户端希望返回一个 java 对象。您想通过重定向实现什么目标?
    • 当 gwt rpc 服务中抛出异常时,我想重定向到我的错误页面。 (我的问题是我不确定 onFailure 方法是否会捕获所有异常(不仅是 HTTP))?感谢您的帮助
    • RPC 是一个 AJAX 调用 - 无法更改浏览器内容。您必须在 onFailure 方法中添加逻辑 - 我认为它会一直被调用。
    • 好的,谢谢,那我如何通过客户端的帖子进行重定向?
    猜你喜欢
    • 2012-11-06
    • 2013-12-14
    • 2017-05-01
    • 2016-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-17
    相关资源
    最近更新 更多