Eclipse RAP 1.0 给 Ajax 带来了 RCP 和 OSGi

  • Craig Wickesser
  • 宋玮

2007 年 10 月 20 日

话题:JavaWeb框架语言 & 开发

Eclipse 基金会星期一发布了 Eclipse Rich Ajax Platform (RAP) 1.0。该 Eclipse RAP 是一个提供给企业应用开发者用来创建和部署 RIA(Rich Internet Applications)的 Ajax 工具包。

InfoQ 有机会与 RAP 项目领导人 Jochen Krause 就这个首发版本进行交谈。Krause 首先被问及 Eclipse RAP 与其它 Ajax 框架及平台的对比:

RAP 是以 OSGi 参考实现 Equinox 为基础的。它允许开发者以组件(插件——plug-in)方式构架应用,这种特征是 Eclipse 成功的关键。它还允许开发者使用 Java 作为他们的实现语言,并提供了高级工具套件——有良好建树的 Eclipse JDT 和 PDE(Plug-in 开发环境)。最终,RAP 允许桌面客户端(使用 Eclipse RCP)和 RIA 客户端(使用 RAP)的单一环境构建。

Ian Skerrett总结了 RAP 的全部用途:

RAP 所做的所有事情就是让你用 Java 写 Ajax 应用并使用基于 OSGi 的 Eclipse 模型。想起来有点像 GWT,但是使用的是 Eclipse plutin。这意味着你现在可以将你的 Ajax 应用构建为可扩展组件。对大公司来说这很重要,因为他们一般喜欢创建能帮助他们在不同的应用中重用代码的架构。

正如在Ajaxian.com所报告的:

RAP 与类似 GWT 这样的东西非常不同。RAP 在服务器上运行逻辑,在运行时(与编译时相对)产生控件的 Javascript。一个运行在服务器上的 SWT 实现,人们可以扩展你的视图(view)和透视图(perspective)以增加功能。

尽管 RAP 提供了使用 Java 的能力,当问及其对 PHP、Ruby 或.Net 的支持时,Krause 表示未来支持 Ruby 或其他运行在 JVM 上的语言是可行的。另外,RAP网站 提及 RAP 提供了 SWT API 的子集。当 InfoQ 询问 Krause 关于 RAP 在整个 SWT API 中的地位时,他的回答很简单:

覆盖非常广泛
目前明确缺少如下项目,
  • GC (能够画出 UI 的图形上下文(也没有图形编辑器))
  • 没有键盘事件(至今)
  • 没有低级鼠标事件(至今)
  • 没有拖放(drag&drop)(至今)
  • 没有风格文本(StyledText)(Eclipse 中所有源代码编辑器的基本内容)

在 Ajax 应用舞台的一个热门话题是离线支持,例如Google Gears。Eclipse RAP 不提供离线支持,但是作为替换,Krause 暗示Eclipse RCP将有适当的选项。

最后,InfoQ 让 Krause 详细说明 RAP 的 Equinox 支持对它有什么好处:

  • 应用程序组件化
  • Equinox 是一个平台,可以在许多平台上运行:设备、桌面、服务器。
  • Equinox 与标准 JEE 服务器(应用可以被简单部署为.war)相结合,但是应用也可以单独运行。

一些补充信息,包括说明安装和使用 Eclipse RAP 的界面截屏等,可以在下面链接中找到:

查看英文原文:Eclipse RAP 1.0 Brings RCP and OSGi to Ajax

JavaWeb框架语言 & 开发