问题标签 [gwt-rpc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
867 浏览

gwt - 使用 Chrome + GWT-rpc 防止浏览器加载指示器

我正在编写一个 ajax 聊天 webapp,只是为了测试使用 GWT。

为了模拟服务器端将聊天消息从服务器推送到浏览器,我在后面运行了一个 XHR 请求。一切正常 - 除了在 Chrome 上,由于后台的 XHR 请求,浏览器正在显示加载图标(微调器)。

有没有办法避免这种情况?我已经在 Firefox 中对其进行了测试,但它没有显示这种行为。

编辑 - 我找到了解决方案。http://groups.google.com/group/google-web-toolkit/browse_thread/thread/a0330cb47e05c485?fwc=2

引用 GWT 组的帖子:

如果立即从“body onload()”(即 onModuleLoad())建立连接,Chrome 会显示加载指示器。

0 投票
4 回答
12758 浏览

security - GWT RPC - 它是否足以防止 CSRF?

更新:GWT 2.3 引入了一种更好的机制来对抗 XSRF 攻击。请参阅http://code.google.com/webtoolkit/doc/latest/DevGuideSecurityRpcXsrf.html


GWT 的 RPC 机制对每个 HTTP 请求执行以下操作 -

  1. 设置两个自定义请求标头 - X-GWT-Permutation 和 X-GWT-Module-Base
  2. 将内容类型设置为 text/x-gwt-rpc;字符集=utf-8

HTTP 请求始终是 POST,并且在服务器端 GET 方法会引发异常(不支持该方法)。

此外,如果这些标头未设置或具有错误的值,服务器将无法处理并出现异常“可能是 CSRF?” 或类似的东西。

问题是:这足以防止 CSRF 吗?有没有办法在纯跨站点请求伪造方法中设置自定义标头和更改内容类型?

0 投票
1 回答
5289 浏览

java - 在与 GWT Module Base 不同的上下文中调用 GWT 服务?

我有一个带有 X-GWT-Module-Base 的 GWT 模块,http://host:8080/foo/并且想调用位于http://host:8080/bar/. 例如,原因是我希望能够在两个不同的 GWT 客户端项目之间共享 GWT 服务。

到目前为止,我所做的只是服务是否位于模块上下文中,即http://host:8080/foo/bar工作正常,@RemoteServiceRelativePath("bar")在我的服务接口中使用。

似乎@RemoteServiceRelativePath唯一允许一个相对于模块基本 URL 的值......那么还有其他方法可以完成我想要完成的任务吗?

0 投票
1 回答
1440 浏览

gwt-rpc - 重写序列化对象的方法时出现奇怪的 GWT 序列化异常

我有一个 GWT 可序列化类,我们称之为 Foo。Foo 实现 IsSerializable,具有原始和可序列化成员以及其他瞬态成员和无参数构造函数。

也是一个在 RPC 通信中使用 Foo 实例的服务。

我如何使用这个:

在上述情况下,代码正在运行,并且回调实例的 onSuccess() 方法被执行。

但是当我像这样覆盖 foo 实例上的 bar() 方法时:

我得到 GWT 序列化异常。

请赐教,因为我真的不明白为什么。

0 投票
2 回答
1568 浏览

gwt - 使用 ssl(https)时请求构建器调用不返回

我正在使用 GWT。目前使用 gwt-rpc 进行登录认证。仅出于登录目的,我想使用 ssl(https),​​因此我尝试使用 Request Builder 并使用 https 调用 servlet,而不是使用 gwt-rpc。当在 Servlet URL 中我使用协议作为 http 时,请求构建器可以完美地工作并且响应返回到客户端(onResponseReceived)。但是当我在 servlet url 中使用 https 时,servlet 被调用,但响应没有返回到请求构建器的 onResponseReceived 方法。

我的带有 http 的 url 看起来像:http://localhost:8888/myproject/myservlet 和 https 它看起来像:https://localhost/myproject/myservlet

请给出任何建议或有任何其他方法可以做到这一点。也可以在 gwt-rpc 上使用 ssl。

0 投票
1 回答
1880 浏览

gwt - Gwt 如何从来自 http 的页面通过 https 调用 servlet/rpc

有什么方法可以调用 servlet 或从 gwt 客户端进行 gwt-rpc 调用并取回响应。或者仅出于登录目的通过 https 调用 RPC。
请提出任何方法或解决方法来实现上述任务

0 投票
2 回答
438 浏览

java - 如何从 GWT 服务器端引用普通的 java 类

我正在使用 Eclipse Galileo 的 GWT 插件构建我的项目。当我完成服务器和客户端之间的 RPC 后,我尝试在 GWT 项目中对非 GWT 项目中的普通 Java 类进行引用,但每次创建此类的对象时,我都会得到一个ClassNotFoundException. 我为 GWT 项目做了构建路径,但它仍然给了我同样的异常。有没有办法让它工作?

0 投票
1 回答
450 浏览

gwt - Guice 和 GWT 问题 - 找不到 GWT.rpc

我用简单的服务构建了一个简单的联系人管理器应用程序,它确实有效。然后我决定使用 Guice 来管理我的服务和实现。我还将 mvp4g 插件用于 MVP 设计模式。我在他的博客上关注了 Eric Burke 的示例,我的代码如下所示:
ContactService.java

联系ServletModule.java:

MyGuiceContextListener.java

但是当我启动我的应用程序并尝试通过调用 listContacts() 列出联系人时,tomcat 告诉我找不到 GWT RPC(确切地说:请求的资源(/YuriContactManager/org.yuri.ContactManager/GWT.rpc)是不可用。)我的 web.xml 看起来像这样:

任何人都有类似的问题或知道可能出了什么问题?

0 投票
4 回答
1962 浏览

java - GWT:使用 RPC 从数据存储中填充页面太慢

有没有办法使用从数据存储区加载的数据生成的 GWT 的 UI 元素来加速页面的填充?我可以避免在页面加载时进行不必要的 RPC 调用吗?

有关我遇到的问题的更多详细信息:有一个页面,我在该页面上生成了一个表,其中包含从数据存储区加载的实体列表的名称和按钮。该页面有一个入口点,在其 onModuleLoad() 中我执行以下操作:

这可行,但需要 30 多秒才能加载包含 300 个候选人的按钮的页面。这是无法接受的。

该应用程序在 Google App Engine 上运行并使用应用程序引擎的数据存储区。

0 投票
1 回答
177 浏览

java - 如何在 GAE 部署中包含外部类?

我正在使用 Eclipse 的 Google 插件并遇到以下问题:

项目 (A) 包含一个基于 GWT 的 GUI,它与运行在 GAE 上并使用 JPA 的服务器通信。此外,还有一个项目 (B) 将旧数据迁移到新数据存储。由于这两个项目都使用通用数据模型,我将一组接口和枚举提取到一个单独的项目(C)中,并设置其他两个项目对它的依赖。

Java App 项目 (B) 似乎可以工作,但 GWT/GAE 项目 (A) 仅在我手动将类复制到 WEB-INF/classes 目录时才有效。显然,这仅在使用托管模式时才有效。

有人知道如何在 Eclipse 中配置这样的多项目设置吗?

另外,我不确定多项目布局是否是最佳解决方案。通用模型对象集用于所有 3 个领域:

  • 用户客户端(GWT项目编译标准文件夹客户端和共享)
  • 服务器端(为 GWT-RPC、上传和不同的提要提供服务)
  • 迁移应用程序(将遗留数据发布到上传 servlet)

有哪些架构选项可以将重复类的数量保持在最低限度?