写点什么

JSF 开发框架 OperaMasks 推出 1.1M2 版本

  • 2007-09-04
  • 本文字数:1210 字

    阅读完需:约 4 分钟

日前 OperaMasks.org 社区推出了其开源的 JSF 开发框架 OperaMasks 1.1M2 版本。在新的版本中增加了多个便于开发的标记,并修复了用户反馈的一些 Bug。OperaMasks 是由金蝶中间件公司支持的一个开源的以JSF 为核心引擎且引入了丰富的JSF 组件的开发框架,于2007 年7 月份正式对外发布。

Apusic OperaMasks 全国巡演会上,InfoQ 中文站就这一框架的特性、社区支持等问题和其架构师袁红岗进行了交流。谈到为什么为什么选择以 JSF 为基础技术的原因,袁红岗表示:

JSF 是由 Sun 公司主导提出的一个编程模式和标签库,使用它可以减轻带有服务器端 UI 的 Web 应用的建立和维护工作,目前已经得到了 IBM、BEA 和 Redhat 等众多公司的支持。另外与现在很多流行的开源框架建立在 J2EE 本身和 HTTP、HTML 底层协议基础上所不同的是,JSF 与底层协议无关,是一种更高层次的页面表达形式,或者说它更是一种规范或者标准。正是因为这一点,JSF 的持续性、包容性和扩展性都非常好。

OperaMasks 很好地融合了 JSF 的一些优点,并加入了当前流行的 Ajax 技术。袁红岗这样描述了 OperaMasks 的特性:

关于 OperaMasks 的详细特性,可以浏览 OperaMasks 官方网站的文档,这里需要重点提及的是它对 RIA 技术的可插拔实现。随着 Ajax 的出现,Web 应用也越来越丰富多彩,很多软件厂商也推出自己的 RIA 技术方案,比如微软的 Silverlight 、Adobe 的 Flex 和 Sun 的 JavaFX 等,OperaMasks 通过 Render Kit 可以轻松地融合这些技术,只需要针对某种 RIA 技术编写一个 Render Kit,这种新的 RIA 技术就能在 OperaMasks 中获得支持,而以前所写的应用也不需要做任何修改! 另外,结合 OperaMasks 实现融入 Ajax 风格的 Web 应用时,不需要你了解 Ajax 内涵,也不需要了解 JavaScript 的使用,只要代码是遵守 JSF 规范的,OperaMasks 即可使其呈现出 Ajax 效果。对于当前流行的 REST、Ruby 等技术在 OperaMasks 中也可以直接应用等。

由国内的商业公司推出开源的开发框架,还不是一个多见的行为,社区里也不乏一些质疑的声音,Ajaxcn 网站站长、《Ajax 实战》一书的译者李锟这样评价 OperaMasks:

袁红岗的能力非常强我也没有疑义,他率先实现了国内第一个 JavaEE 服务器,做过的工作和贡献有目共睹。问题就是,万一 JSF 和 EJB 都是没有前途的技术,甚至整个 JavaEE 都前途暗淡,那么基于这些技术的开发框架的前途也就很难说了。 还有一个问题是,OperaMasks 能否建立起来一个像 Rails 和 Flex 那样庞大和生机勃勃的开发者社区?目前看来可能性非常小。这是我们做技术选择必须慎重考虑的一个问题,这跟民族感情没有什么关系。

与 Java 社区优秀的 Spring、Struts 等这些优秀开源产品相比,OperaMasks 还有很长的一段路要走。但 OperaMasks 已经迈出了坚实的第一步,除了发布 1.1M2 新版本,日前还推出了支持 OperaMasks 框架的开发平台 Apusic Studio 5.1M1 、发布了 Apusic OperaMasks.org 社区 2.0Beta 版等。恭喜 OperaMasks 团队!

2007-09-04 01:011478

评论

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

微信朋友圈的高性能复杂度分析

凌波微步

「架构实战营」

微信朋友圈的高性能复杂度分析

石小天

架构实战营

「架构实战营」模块二作业 朋友圈复杂度

hxb

「架构实战营」

react源码解析6.legacy模式和concurrent模式

buchila11

React

六年安卓开发的技术回顾和展望 | 社区征文

拭心

android 程序员人生 shixinzhang 新春征文 2月月更

使用 Cilium 增强 Kubernetes 网络安全

张晓辉

Kubernetes 云原生 ebpf cilium

微信朋友圈复杂度分析&架构设计

AragornYang

架构训练营 架构实战营

微信朋友圈高性能架构设计

五月雨

架构实战营 「架构实战营」

计算机毕业设计安卓疫苗预约APP源码,后台java springboot

清风

安卓 计算机毕业设计

几种数据库存储引擎比较

乌龟哥哥

:MySQL 数据库 2月月更

架构实战营模块九作业

spark99

架构实战营

Redis 在 vivo 推送平台的应用与优化实践

vivo互联网技术

服务器 消息推送 redis'

微信朋友圈高性能复杂度分析

浪飞

Linux系统编程-进程概念、进程管理、信号处理

DS小龙哥

2月月更

Kotlin语法手册(二)

寻找生命中的美好

android kotlin 安卓

TDengine在TCL空调能源管理平台的实践

TDengine

数据库 大数据 tdengine 物联网

最全总结 | Android 系统抓包喂饭教程!

星安果

android 抓包

WebRTC 如何在安卓系统上采集音频数据 | 社区征文

liuzhen007

音视频 WebRTC 新春征文 2月月更

Web Components系列(七) ——自定义组件的生命周期

编程三昧

前端 组件化 2月月更 WebComponent

如何用 Python 实现一个单链表

宇宙之一粟

Python 数据结构 单向链表 2月月更

微信朋友圈的高性能复杂度分析

Leo

架构实战营

大数据存储领导厂商创新科加入,携手龙蜥社区共建开源生态

OpenAnolis小助手

大数据 Linux 开源 云存储

Linux系统编程-Shell脚本基本使用(数组、函数、字符串处理)

DS小龙哥

Shell 2月月更

重磅消息·OpenMLDB官方网站 今日正式上线!

第四范式开发者社区

人工智能 机器学习 开源项目 AI Studio 特征平台

我做基础架构学到的42件事

多颗糖

数据库 架构 架构师 基础架构

《MySQL入门很轻松》第3章:数据库的创建与操作

乌龟哥哥

:MySQL 数据库 2月月更

微信朋友圈复杂度分析与设计

刘帅

微信朋友圈高性能复杂度分析

Bear

「架构实战营」

Linux系统编程-进程创建(fork)、外部程序调用(exec)

DS小龙哥

进程 fork 2月月更

Spring Cloud Alibaba Nacos路由策略之保护阈值!

王磊

spring cloud alibaba

JSF开发框架OperaMasks推出1.1M2版本_Java_霍太稳@极客邦科技_InfoQ精选文章