写点什么

利用 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:593088
用户头像

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

关注

评论

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

家用机器人指令跟随训练新数据集发布

qife122

人工智能 数据集

科研环境配置太麻烦?Pixi 一站式帮你搞定!

肩塔didi

人工智能 rust cuda 包管理 科研

用 Pixi 管理 Python 项目:打通Conda 和 PyPI 的边界

肩塔didi

机器学习 开源 rust pip conda

深度剖析银狐APT攻击链,最终载荷竟是致命远控

塞讯科技

网络安全 信息技术 APT攻击 安全验证

YashanDB TREAT函数

YashanDB

数据库

YashanDB TRUNC函数

YashanDB

数据库

迈向 AI 驱动的数据平台新时代

Databend

YashanDB UNISTR函数

YashanDB

数据库

无监督训练在NLP中的价值体现

qife122

自然语言处理 词元化

ROPE 阅读苏神博客有感

antonio

MySQL事务原理:从ACID到隔离级别的全解析

秃头小帅oi

行业热点丨智能仿真时代:电子工程多物理场解决方案创新实践

Altair RapidMiner

AI 仿真 PCB CAE 电子工程

dMSA 滥用 (BadSuccessor) 导致权限升级:使用 ADAudit Plus 监控关键属性更改

运维有小邓

日志审计 AD域审计

华为阅读独家首发《金字塔在中国:古埃及文明大展炼成记》精品书

最新动态

防止NLP模型更新中的性能回退技术解析

qife122

机器学习 模型优化

YashanDB TYPEOF函数

YashanDB

数据库

北京市十一学校×火山引擎:全球AI少年齐聚北京,以代码会友

新消费日报

低代码新范式:AI设计稿转代码在产品设计的实践落地

职场工具箱

AI 设计 产品设计 UI 代码生成

YashanDB TRIM函数

YashanDB

数据库

🔥Grok 4 永久免费!深度测评:优势短板一次说清

GPU算力

马斯克 openai grok gpt-5 xAI

SIEM解决方案怎么选?企业必看的7大核心功能解析

运维有小邓

日志分析 日志管理 SIEM

【架构革命】LinkedIn也无法拯救的Kafka:Pulsar 的存算分离成了终极答案?

AscentStream

kafka pulsar linkedin

拆解Agent如何实现“听懂→规划→搞定”全流程

测吧(北京)科技有限公司

人工智能 软件测试 测试开发 agent

优化DeepSpeed ZeRO在低成本硬件上的运行效率

qife122

分布式训练 GPU加速

行星文化上线华为音乐,沉浸遨游张杰的音乐宇宙

最新动态

Awesome Claude Code 资源大全

qife122

开发工具 Claude-Code

工程师团队如何打造4K流媒体设备的创新技术

qife122

无线系统设计 天线创新

GPT-5多模态与情境感知AI技术解析

qife122

人工智能 企业应用

通过模糊测试发现燃料虚拟机中定价错误的操作码

qife122

模糊测试 燃料虚拟机

Milvus + n8n:通过分析GitHub文档打造垂直领域的智能问答

阿里云大数据AI技术

GitHub Milvus n8n 智能问答

Pixi vs Conda:7 个让我切换到 Pixi 的理由

肩塔didi

人工智能 机器学习 GitHub

利用Clear Toolkit连接Flex与Java开发_Java_Moxie Zhang_InfoQ精选文章