【问题标题】:GWT XHR wrong URL in Safari HTTP status 0Safari HTTP 状态 0 中的 GWT XHR 错误 URL
【发布时间】:2014-06-04 22:07:44
【问题描述】:

我有一个带有 LDAP 身份验证的 Web 应用程序,在 Glassfish 服务器上运行的客户端使用 GWT 和 restygwt 开发。在 Chrome 和 Firefox 中,一切似乎都正常工作。但是在 Safari 中。我什至在尝试登录之前收到 HTTP 状态 0。Chrome 和 Firefox 都在正确请求

http://localhost/pROJECT/user/self. 

然而 Safari 要求

http://project/user/self

不存在。所有其他 css、html、js 请求都是正确的 url。为什么 Safari 从请求中删除 localhost?并认为该项目是主机?到目前为止,我已经能够完成所有事情,而无需查看生成的 javascript。这是我现在必须做的事情吗?

这是服务定义

@Path("user")
public interface UserService extends RestService {
    @GET
    @Path("self")
    public void self(MethodCallback<User> callback);
}

这是客户端对服务的详细调用

    userService.self(new MethodCallback<User>() {
        public void onFailure(Method method, Throwable exception) {
            statusBar.error(exception);
        }

        public void onSuccess(Method method, User self) {
            statusBar.done();
        }
    });

如果需要,我可以提供更多信息或代码。

【问题讨论】:

  • 你是在 DEV 模式下运行它吗?如果是,则缺少 gwt.codesvr parameter。如果您使用没有 gwt.codesvr 的 URL,则您正在运行应用程序的编译版本,而不是 DEV 模式。
  • 很遗憾不在 DEV 模式下。我正在使用 Netbeans 进行开发,但不确定如何在 glassfish 的外部实例中使用 GWT 设置调试。我已经在 DEV 模式下在 eclipse 中运行了 GWT 示例,但这仅仅是因为 GWT eclipse 插件使该过程变得简单。

标签: gwt safari xmlhttprequest resty-gwt


【解决方案1】:

如果还没有,请尝试使用Defaults.setServiceRoot(GWT.getHostPageBaseURL());

【讨论】:

  • 这可以是评论
  • 我认为这可以解决他的问题,这就是我将其发布为答案的原因
猜你喜欢
  • 2013-11-20
  • 2015-01-24
  • 1970-01-01
  • 2017-05-20
  • 1970-01-01
  • 1970-01-01
  • 2016-09-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多