目前处于开发中的 GWT 项目有:以数据为中心的 widget、可折叠的面板、日志、表单验证、声音以及图形。最近更新过的 GWT 相关项目有:Smart GWT、GWT Designer、Gilead 以及 Raphael GWT。
GWT 最新的版本是2.0.3,于今年2 月发布。这是一个bug 修复版,并没有向去年12 月发布的GWT 2.0( InfoQ 曾报道过该版本的发布情况)中加入任何新特性。 GWT/Wiki 包含了目前 Google 正在开发的项目,John LaBanca 在 GWT Contributors 列表中总结了未来将要实现的一些主要特性:
GWT 2.1
PagingScrollTable 与 FastTree——我们正从事 GWT 2.1 下以数据为中心的 widget 开发,将提供针对树和表格的 API。这一切将构筑在那些孵化 widget 之上,但新的以数据为中心的 widget API 是从当前的 API 演进出来的,变化较大。在将这些 widget 加到 GWT trunk 上后,我们将停止 PagingScrollTable 与 FastTree 的开发工作。Locale Selection——在服务器端选择本地化信息可以降低启动时请求的往返次数,高效的运行时本地化信息选择也需要该功能。该程序库将增加到 GWT 2.1 中。
GWT 2.2
CollapsiblePanel——该 widget 将成为 DockingLayoutPanel 的子类,类似于 SplitLayoutPanel。SliderBar 与 ProgressBar——目前这两个 widget 都需要使用全局定时器,这会导致一定的性能问题。如果不使用可调定时器就能实现这两个 widget,那么我们会将其添加到 GWT 2.2 中。如果做不到这一点,那就不再开发他们了。
Logging——如果时间允许,我们会将日志 API 加到 GWT 2.1 中。
Form Validation——我们将在 GWT 2.2 中仔细考虑表单验证 API。
孵化项目
SoundResource——SoundResource 是个前途无量的 API,它会为应用添加声音,但在将其添加到 GWT 之前我们还需要等待 HTML 5 特性的普及,只有这样才更具意义。我们将把 SoundResource 迁移到 gwt-voices 项目中: http://code.google.com/p/gwt-voices/ Graphics——图形库提供了一个专一、平台独立的 API,它构筑在 Canvas 和 VML 之上。我们尚未打算将该库放到 GWT trunk 上,但这个项目绝对值得期待。
HtmlDecorators——我们会继续开发该项目以便能够自由地将修饰添加到 widget 之上。
GWT 生态圈中的其他开源或商业项目有:
Smart GWT
Smart GWT 框架提供了可以运行在客户端上的增强 widget,但该 widget 还是由服务端数据支撑的,它构建在 SmartClient 之上。其主要特性有:
- 可以将 Flash、ActiveX、Applet 和 SVG 作为 Smart GWT widget 运行。
- 可以在 ListGrid 单元格中嵌入 widget。
- 支持三态的 Checkbox TreeGrid。
- 用在 GWT 2.0.3 上。
GWT Designer
GWT Designer 是个可视化的构建器,其所生成的 Java 代码可以被 GWT 编译成 JavaScript。GWT Designer 的最新版是 7.3,搭配 GWT 2.x,支持 Development Mode、Layout Panel 和最新的 widget、HTML、Label 以及 Hyperlink。
Gilead
Gilead 可以通过 Hibernate 持久化 GWT 对象:
Gilead 可以轻松克隆持久化实体并将其发送到 JVM 之外。在返回到服务器端时还能合并起来,这样就能把合并后的实例当作游离态实体加以重用。
Raphael GWT
Raphael GWT 是个 Raphael 的适配器,Raphael 是个 JavaScript 程序库,它无需借助于 HTML5 的 canvas 元素就能在浏览器上进行矢量图绘制。Raphael 适用于 Firefox 3.0+、Safari 3.0+、Opera 9.5+ 以及 Internet Explorer 6.0+。
评论