0

我是 GWT 的新手,并且理解创建如此好的框架背后的动机。但是我无法理解 GWT 在开发模式下如何构建 UI 和显示。

据说,当引导 .nocache.js 文件加载到浏览器中时,该文件创建了一个隐藏的 iframe。然后根据浏览器和语言设置,在所有应用程序逻辑所在的 iframe 中加载一个 .cache.html 文件。

我无法理解的是 gwt 在开发模式/托管模式下如何做到这一点。因为 .cache.html 文件在开发模式下不可用。我假设 sdk 收到来自 .nocache.js 文件的关于浏览器详细信息的请求,然后为该特定浏览器生成一个 .cache.html 文件并加载到 iframe 中。我的问题是 .nocache.js 文件如何向 sdk 发送请求以动态生成 .cache.html 文件?还是它与hosted.html 和浏览器插件有关?在开发模式下如何加载 UI 和 RPC 代码。要让 nocache.js 文件发送请求,必须有一个服务器程序 (Servlet) 监听请求并允许 GWt 开始寻找入口点类并开始生成 UI 内容。

我不明白 gwt 将如何了解浏览器设置并生成 UI?hosts.html 和浏览器插件是否与内容生成有关?

我用谷歌搜索,但我所有的试验都没有用。或者我可能使用错误的搜索键进行搜索。谁能告诉我或指向一个清楚解释的链接?

4

1 回答 1

0

当应用程序在开发模式下运行时,Java 虚拟机 (JVM) 实际上将应用程序代码作为编译后的 Java 字节码执行,使用 GWT 管道连接到浏览器窗口。 在此处输入图像描述

从 GWT 2.0 开始,开发模式使用常规浏览器而不是嵌入式浏览器。您可以使用任何支持的浏览器。进程外托管模式 (OOPHM) 即将替代 GWT 托管模式调试器。OOPHM 允许使用标准浏览器(IE、Safari(32 位)和 Firefox)来调试 GWT 客户端代码。

使用 OOPHM,您可以:

  • 无需耗时的 Java 到 JavaScript 重新编译即可对您的小部件进行修改 为小部件代码设置断点。
  • 使用在传统托管模式下不可用的任何高级浏览器功能和扩展(例如 Firebug)。

有用的链接:

https://developers.google.com/web-toolkit/doc/latest/DevGuideCompilingAndDebugging

http://code.google.com/p/google-web-toolkit/wiki/DesignOOPHM

http://code.google.com/p/google-web-toolkit/wiki/UsingOOPHM

http://www.slideshare.net/allahbaksh/gwt-generators-and-oophm

玩得开心。

于 2012-12-19T07:08:14.390 回答