【问题标题】:Client/Server Communication Between GWT Client and a Desktop-run ServerGWT 客户端和桌面运行服务器之间的客户端/服务器通信
【发布时间】:2012-12-06 04:38:39
【问题描述】:

我正在尝试使用 libGDX 和它的 HTML5/GWT 端口编写基于浏览器的 MMO,但我不知道如何进行客户端/服务器交互。我已经为自己编写了桌面应用程序作为一种“学习”项目,现在决定将其重写到浏览器中。

我以前从未做过浏览器开发,所以我不太清楚如何进行项目的网络部分。我担心这是因为我不太确定 GWT 实际是如何工作的,尤其是在我正在做的事情上。我尝试使用一个名为 KryoNet 的库进行网络连接,但显然您不能对 GWT 使用普通的网络连接方法。我收到了这个错误:http://pastebin.com/DVJPA44N

简而言之,如果可能的话,我需要帮助/指导如何处理 GWT 的客户端/服务器通信类型。如果有一个简单的谷歌答案,我很抱歉,我不知道如何表达我正在寻找的内容。

谢谢!


编辑:我查看了 WebSockets API,这并不是我想要的。我想在桌面本地托管服务器并与浏览器中托管的客户端进行通信。如果我只是误解了 GWT 中的整个 servlet 设置,我深表歉意。

【问题讨论】:

  • GWT -> 客户端 Java 代码编译为 javascript 并在浏览器中运行。 GWT -> 服务器 Java (servlet) 编译成普通的 java 字节码并在 jee web 容器中运行,如 jetty、tomcat、websphere(在服务器上运行)

标签: java html gwt networking


【解决方案1】:

你有没有看过类似PlayN 的东西(愤怒的小鸟是最好的例子,将它与 GWT 一起用于应用程序的浏览器端口)

您还需要检查 WebSocket API(在 GWT/JSNI 中直接使用或通过第三方 gwt jar 使用)

【讨论】:

  • WebSocket API 看起来不错。不幸的是,似乎没有一个跨平台的简单解决方案。我更愿意坚持使用 libgdx,因为这是我所熟悉的,而且 PlayN 似乎没有任何我需要从使用 LibGDK 切换的出色功能。
  • 确实 HTML5 是最前沿的。由于您提到移动领域的跨平台,您不妨在 Titanium、PhoneGap、mgwt 和 Sencha 技术上搜索是否有您想要的东西。注意 - 当您使用 GWT 时,这些是跨平台空间中最重要的。
  • 我做了一些研究,似乎 WebSockets 不是我想要的,或者我没有正确理解它。我希望在本地托管服务器并与嵌入在浏览器中的客户端进行通信。
  • GWT -> 客户端 Java 代码编译为 javascript 并在浏览器中运行。 GWT -> 服务器 Java (servlet) 编译成普通的 java 字节码并在 jee web 容器中运行,如 jetty、tomcat、websphere(在服务器上运行)
  • 我没有正确表达我的问题,因为我对这个主题不够了解。你的回答对我说的绝对正确,谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多