GDS 的项目创建者 Franck Wolff 再谈 GDS

  • Jon Rose
  • 张龙

2008 年 11 月 2 日

话题:Java语言 & 开发架构

今年年初,InfoQ 与 Granite 数据服务(GDS)的项目创建者 Franck Wolff讨论了 GDS。在这篇新闻中,我们又一次采访了 Wolff,以对最近发布的 GDS 1.1 版有更多的了解。

Wolff 首先向 InfoQ 的读者介绍了该最新版本的一些新特性:

GDS 1.1 于今年 10 月 6 日发布,它有三个主要的新特性:

  1. Tide:该模块将完全代替 Cairngorm 和 Flex 数据管理服务栈。从 Flex 的角度来看,Cairngorm 是一个非常棒的 Flex 开发框架,但多少有点儿繁重(即便是很简单的操作也需要大量的文件)。从 Java 的角度来看,Flex 数据管理只能用在 LiveCycle 数据服务中,而且我们需要的一些特性根本没有实现,或者并不是我们期望的实现方式:标准的 J2EE 框架集成(如 JBoss/Seam、Spring 或是普通的 EJB3)、客户端的实体缓存、集合分页以及透明的延迟加载。Tide 考虑到了所有这些需求,现在主要面向 JBoss/Seam 框架(不久就会有 Spring 和普通的 EJB3)。
  2. Granite Eclipse Builder:这个新的 Eclipse Builder 插件会在你每次创建或者修改 Java Bean(比如一个实体 Bean)时自动运行 Gas3(GDS ActionScript3 生成器)。当你通过其图形化向导或者选项面板将其配置到你的 Java 项目中时,它就会即时地将整个 Java 模型转化为相应的 ActionScript3 镜像。生成的 Beans 会实现所有的逻辑并可以进行强类型的具体化、延迟加载以及与 Tide 的集成。
  3. MXML/AS3 Web 编译器:该编译器与 Adobe 提供的编译器具有相同的特性(可以对部署到 war 中的 MXML 文件进行即时编译),但它还可以对任何输入流(比如简单的字符串或是数据库)中的代码进行编译。该特性是由 Sébastien Deleuze(Igenko 项目的创建者)贡献的,你可以在这儿试一下。

InfoQ 询问了 GDS 文档化的进展情况:

正在进行中,我们增加了新的一章“入门”,为初次使用 GDS 开发的人提供详尽的指南。参考文档仍需要一些改进,但不久就会更新完。

InfoQ 紧接着上次对 Wolff 的采访,问他是否还坚持之前对 BlazeDS 和 GDS 的比较结果。BlazeDS在去年年底被 Adobe 开源了

我快速过了一遍 BlazeDS 的代码并使用了几次……它确实很棒,但据我所知,它仍然不支持一些重要的企业功能,比如完全的 EJB3/Hibernate 支持(延迟加载)、代码生成工具以及与 JBoss/Seam 和 Flex 数据管理服务的紧密集成。GDS 1.1 则提供了所有这些特性,我再强调一次,GDS 真正的竞争者是 LCDS(它依然没有延迟加载特性),而不是 BlazeDS。

接下来,InfoQ 问到了 GDS 的长期路线图:

GDS 路线图中最重要的特性之一就是提供一个完整的客户端数据管理系统,能与几乎所有的 J2EE 框架集成。正如我之前所说,这正是 Tide 的目标,除了其当前提供的 JBoss/Seam 支持,我们还会让其支持 Spring 和普通的 EJB3 技术。此外,我们正在仔细研究新提出的 Web Beans 规范(请看JSR-299),希望 Web Beans 的第一个实现发布时我们就可以将其与 Tide 集成起来。

我们要提供的另一个特性就是简化 GDS 中的上传和下载操作。如果现在在 GDS 中使用标准的 flash.net.FileReference 类,那你必须编写 一个 servlet 来处理上传和下载操作。我们准备简化该操作,至少在 GDS 中提供一个标准的、专门完成该项任务的 servlet。

从管理角度来说,我们打算编写一个 GraniteDS 控制台,可以进行运行时配置管理和服务浏览(就像 AMFPhp Servcice Browser 一样)。

另一个长远目标是开发一套可以进行数据管理(比如可以从模型元数据的描述中构造 Flex 表单的 Entity Form)的 Flex 组件,也许还可以管理流。

最后,InfoQ 问及了 GDS 的社区:

从 1.0 版发布到现在已经有将近一年的时间了,在这期间我看到 GDS 的论坛会员数在不断增长(从大约 100 人到现在的 300 人)。每天的下载量都在 100 次以上,但很难用这个数据来估算到底有多少开发人员在使用 GDS……我们看到一些大公司正在使用 GDS 进行生产产品的开发 (抱歉,我现在还不能透漏这些公司的名字),这对 GDS 来说是一个好消息。

GDS 的贡献者(包括我自己)大约有 12 个,但大多数都是临时的(他们主要完成修补工作或是增加一些小扩展)。William Draï(我在 Adequate Systems 的同事)和我是最活跃的分子,但 Ingram(这是其博客)和 Sébastien Deleuze(GDS Web 编译器的作者)也对 GDS 做出了巨大的贡献。

请点击http://www.graniteds.org/以深入了解 GDS。

查看英文原文:More on Granite Data Service's with Project Founder Franck Wolff

Java语言 & 开发架构