9 月 13 日,2025 Inclusion・外滩大会「开源嘉年华」正在限量报名中! 了解详情
写点什么

利用 Clear Toolkit 连接 Flex 与 Java 开发

  • 2009-03-25
  • 本文字数:1950 字

    阅读完需:约 6 分钟

Farata Systems 于 2 月 24 日宣布开源其 Clear Toolkit Framework,这是一个使用 Adobe Flex 与 Java 开发企业级 RIA 的框架。InfoQ 有幸采访了 Farata Systems 三个合伙人之一的 Yakov Fain 一探究竟。

Fain 首先解释了创建 Clear Toolkit 的缘由:

在开发企业项目时,大家都希望减少手工编码的工作量,因此我们想要自动化一些重复性的工作。如果你是个使用数据库的 Java 程序员,就会不断编写类似的 JDBC 代码来处理结果集。我们首先着眼于 XSL 模板并搭配元数据从而基于 SQL Select 语句为后端的 Java 处理生成了完整的源代码,接下来增加了更多的模板以使用 Adobe Flex 来生成前端,这样我们现在只需花几分钟的时间就可以生成 Flex/Java CRUD 应用的代码了。与此同时,我们还为 Flex 应用创建了 Ant 脚本生成器,友好的日志器及大量增强的 Flex 组件来降低手工编码的工作量。

在被问到 Clear Toolkit 的典型使用场景及其能解决的问题时,Fain 继续说到:

首先,Clear Toolkit 可用来创建企业级的 Flex/Java 项目,接下来这些灵活的 Flex 组件就可以简化对用户修改数据的跟踪、更方便地处理数据表格与表单并自动对连接的 Adobe AIR 应用进行数据同步。我们还拥有优秀的 Web 报表工具 ClearBI,最终用户可以凭借它创建自己的报表而无需其他软件(只需一个带有 Flash Player 的 Web 浏览器即可)。我们将在不久之后发布 ClearBI。

根据 Fain 所述,当前的 Clear Toolkit 包含如下组件:

  • Clear Data Builder,这是个 Eclipse 插件,可以根据 SQL 语句或 Java 数据传输对象为 BlazeDS 或 LCDS 生成 CRUD 应用。
  • DTO2Fx,该插件会根据 Java 类型自动生成对应的 ActionScript 类。
  • Log4Fx 是个构建于 Flex logging API 之上的 Eclipse 插件,它会自动化日志处理并且更加灵活,也更加友好。
  • Fx2Ant 插件会为 Flex Builder 项目生成优化的 Ant 构建脚本。
  • clear.swc 是个增强的 Flex 组件库。

他继续说到:

因为大多数的 Clear Toolkit 组件都是非常灵活的,因此他们几乎可以用在任何的 Flex 项目中。如果你只需高级的日志组件,使用 Log4Fx 就好了。如果你想要增强的数据验证类和表单处理,只需将 clear.swc 添加到项目的构建路径中即可。如果你仍在使用 SQL,请使用 Clear Data Builder 来生成 CRUD。你还可以根据 Java DTOs 生成整个 Flex 前端,包括 UI 层数据变化时与服务器之间的通信机制。对于那些由于各种原因而决定使用 Adobe 开源的服务端组件 BlazeDS 而放弃商业的 LiveCycle Data Services bundle 的用户来说,Clear Toolkit 能助他们一臂之力。我们认为 BlazeDS 是个健壮、设计良好的组件,它可以用在要求很高的企业应用中。

关于 Clear Toolkit 的开源,Fain 说到:

在过去的 2 年中,我们一直在 www.myflex.org 上免费提供 Clear Toolkit 组件。之后我们认识到,尽管公司招纳了优秀的软件工程师,但这还远远不够,凭借一己之力你无法与成百上千的开发者的智慧相抗衡。我们已经付出了大量努力让 Clear Toolkit 成为 RIA 开发的坚实平台,这样你就无需再花钱了。我们诚邀世界各地的 Flex 与 Java 开发者加入进来,为 Clear Toolkit 成为首选的开源平台而努力奋斗。

Fain 又说:

目前由于这是个开源项目,所以我只能告诉你 Farata Systems 在 2009 年的打算: - 文档化对 AIR/BlaseDS 应用的数据同步解决方案。我们已经编写好了示例应用并在即将出版的 O’Reilly 书Enterprise Development with Flex中进行了说明,但现在需要将这些内容转换为产品文档。

  • 增强 Flex UI 组件以支持客户端的 PDF 生成。
  • 文档化 Clear 组件库生成的类(clear.swc)。
  • 开源 Web 报表工具 ClearBI。

除了 Fain 在接受 InfoQ 采访时所说的以外,他还在 InsideRIA 上给出了主要的框架组件的一个概览。对于那些使用客户端或服务端架构处理过数据同步问题的开发者来说,该框架最吸引人的地方在于它能跟踪客户端上的 Flex 更新并将其同步到 Java 服务器上。

如果熟悉 LCDS,那么你应该知道 Data Managemet Services 使用了 ChangeObject,这是一个特殊的 DTO,用来在服务端与客户端之间传播变化。我们的组件也包含了这类对象,而且它不仅可以用在 LCDS 上,也能用在 BlazeDS 上。
… DataCollection 类会自动跟踪 UI 上的所有变化并将相应的 ChangeObject 实例集合发送到服务器端。

… 当用户准备将改变提交到服务器端时,下面这行会将 ChangeObject 实例集合发送到服务器端:collection.sync()。

Clear Toolkit 基于 MIT 协议,这意味着只要声明 Farata Systems 是代码的创建者,你就可以在自己的应用中使用我们的代码了。可以从 http://sourceforge.net/projects/cleartoolkit/ 下载 Clear Toolkit 3.1 最新的构建版和源代码,相关的文档、示例、论坛和 bug 跟踪也在那儿。

查看英文原文: Clear Toolkit Bridges Flex and Java Development

2009-03-25 01:593068
用户头像

发布了 88 篇内容, 共 270.8 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

加量不加价!华为云Flexus云数据库RDS精准解决中小企业上云难题

平平无奇爱好科技

专为中小企业打造!华为云Flexus云数据库RDS“零配置”开箱即用

平平无奇爱好科技

4大优势,刷新体验!华为云Flexus云数据库RDS助力中小企业高效上云

平平无奇爱好科技

WebGL开发医学影像软件

北京木奇移动技术有限公司

软件外包公司 webgl开发 医学影像软件

Flutter & 鸿蒙 Next 中的 setState 使用场景与最佳实践

淼.

Flutter & 鸿蒙 Next 中的 Drawer 导航栏

淼.

Flutter & 鸿蒙 Next 中的表单封装:提升开发效率与用户体验

淼.

云数据库安全吗?华为云Flexus云数据库RDS多重安全机制全面守护

平平无奇爱好科技

Flutter&鸿蒙next 状态管理框架对比分析

淼.

Flutter & 鸿蒙 Next 中使用 InheritedWidget 实现跨 Widget 传递状态

淼.

场景题:100G的文件里有很多id,用1G内存的机器排序,怎么做?

卷福同学

Java 面试 场景题

WebGL开发医学影像软件的技术难点

北京木奇移动技术有限公司

软件外包公司 数字孪生开发 webgl开发

小白也能看懂!华为云Flexus云数据库RDS有效降低上云门槛

平平无奇爱好科技

使用 Redux 在 Flutter&鸿蒙next 中实现状态管理

淼.

Flutter & 鸿蒙 Next 使用 BLoC 模式进行状态管理详解

淼.

BOE(京东方)绵阳“零碳工厂”探访活动圆满落幕 树立显示产业绿色转型新标杆

爱极客侠

鸿蒙 Next 选择 Flutter 开发跨平台应用的原因

淼.

Flutter & 鸿蒙 Next 实现长按录音按钮及动画特效

淼.

Flutter & 鸿蒙 Next 版本:自定义对话框与表单验证的动态反馈与错误处理

淼.

电能管理系统(源码+文档+讲解+演示)

深圳亥时科技

基于arkTS开发鸿蒙app应用案例——通讯录案例

淼.

Flutter & 鸿蒙 Next 中的 Expanded 和 Flexible 使用技巧详解

淼.

Flutter & 鸿蒙 Next 的 Sliver 实现自定义滚动效果

淼.

Flutter & 鸿蒙 Next 中的 Stack 和 Positioned 用法详解

淼.

食品配送管理系统(源码+文档+讲解+演示)

深圳亥时科技

Flutter 的 Widget 概述与常用 Widgets 与鸿蒙 Next 的对比

淼.

开箱即用、稳定可靠!上云优选华为云Flexus云数据库RDS

平平无奇爱好科技

Flutter&鸿蒙next 中使用 MobX 进行状态管理

淼.

仓储管理系统(源码+文档+讲解+演示)

深圳亥时科技

Flutter & 鸿蒙 Next 实现一个计算器应用

淼.

Flutter & 鸿蒙 Next 中的按钮封装:自定义样式与交互

淼.

利用Clear Toolkit连接Flex与Java开发_Java_Jon Rose_InfoQ精选文章