很多JSF专家表示,JSF(JavaServer Faces)可以在不需要编写JavaScript代码的情况下开发异步的JavaScript 和 XML应用程序。
在服务器端Java(ServerSide Java)研讨会3月22日的一次会议上,SUN公司的高级工程师Ed Burns说:开发人员可以使用JSF开发出企业级的AJAX应用程序,这些应用经过了充分的行业证明,具有良好的健壮性,可靠性,易用性和伸缩性。
Ed Burn还表示:“可以通过不同的方式来使用JSF和AJAX。 其中一种方式是同时使用JSF和Project Dynamic Faces 或DynaFaces。 通过这种方式,使用者不需要JavaScript的知识,如果使用者喜欢使用JavaScript还可以构建功能更加强大的应用程序。另一种方法是使用AJAX支持的JSF组件,这种方法只需要有对AJAX很少的知识就可以。另外开发人员还可以只使用AJAX或使用一种AJAX框架。” B urns说:“除了Project Dynamic Faces,还有其他的方式来同时使用JSF和AJAX,其中包括使用ICEsoft公司的 ICEfaces, Ajax2JSF, AjaxAnywhere 和Backbase。”Google公司的Adam Bosworth可以告诉你为什么AJAX在经历失败后又会成功。(点击此连接到相应页面)。
Burns还说:“早在AJAX还不是如此强大之前,JSF的面向对象设计已经为JSF可以在AJAX中使用做了准备。JSF的如下主要特性使得它对于AJAX来说是友好的,其中包括灵活的可扩展组件模型,明确的请求处理生命周期(Request Processing Lifecycle)和一个灵活的可扩展渲染模型。
Burns 说,AJAX的成功在于其具有的如下理念:JavaScript对页面的开发人员来说透明,但却可以被组件开发者看到;通过状态管理使客户端和服务器端轻松保持同步等。使用JSF和AJAX还可以解决跨浏览器的问题。同时,Project Dynamic Faces将AJAX强大的功能引入到已有的和未来的利用JSF开发的应用。
在2007年于纽约召开的AJAX World大会上,位于康涅狄格州斯坦福德的Virtua公司首席咨询师Kito Mann做了一个名为“看啊,不用JavaScript也可以(Look Ma, No JavaScript)”的讲演,表达了和Burns一样的观点。Mann讲演的主旨是:“使用JSF,可以在不编写任何JavaScript代码的情况下构建应用程序。” Mann说,JSF是针对于JAVA的一种标准的web用户界面框架,其规范包括服务器端用户界面组件,事件模型,一组基本的用户界面组件和基本的应用结构。Mann还是JSFCentral.com的创建者之一。JSFCentral.com是一个由使用JSF技术的开发人员,架构师和经理组成的社区。另外,他还是Java 社区Process' JSF专家组的成员之一。
曼恩说,JSF还提供广泛的工具支持和用RAD(快速应用开发)模式的方法去开发Java Web。此外, JSF是建立在Servlet API之上的,并且促进了第三方用户界面组件市场的发展,他说。
总体来说,“JSF提供透明的AJAX支持,”曼恩说。"我们的想法就是JSF编程模型能与AJAX一起工作。"
有多种支持JSF的IDES(集成开发环境),包括Sun的Java Studio Creator,BEA 的Workshop Studio,Oracle的 JDeveloper 和 Exadel Studio Pro (现在在JBoss umbrella旗下),曼恩说。
而且,JSF架构加上AJAX支持很容易,他说。
事实上,曼恩说JSF有三个主要的AJAX集成策略。
一是把AJAX支持加到现有组件中,二是把AJAX支持直接集成到JSF组件中,三是对现有AJAX控件封装成一个JSF组件,曼恩说。
用在第一种方法中的技术包括Exadel的Ajax4JSF,Ideo技术的开源AjaxAnywhere offering和Sun的DynaFaces,,曼恩说。
支持AJAX直接集成到JSF组件的产品或技术包括Simplica的ECruiser,Infragistics的NetAdvantage,Sun的Project Woodstock,和来自ICEsoft, Backbase and Exadel的技术,曼恩说。
封装现有的AJAX控件到JSF中,两个主要的选择是Sun’s jMaki和Dojo Foundation’s Dojo Faces,他说。
adonisjs 不使用typescript 不用javascript可以吗
转载文章标签 jsf ajax javascript ajax框架 ajax4jsf 文章分类 TypeScript 前端开发
-
python程序代码这样加密保护,你觉得可以吗?
python程序代码加密保护的好方法,有效防止python程序被反编译
python 程序代码 Python 加密狗 加密锁 -
typescript和javascript中如何使用bind方法?
本文给出typescript和javascript中如何使用bind方法的使用对比与建议。
函数绑定 全局对象 typescript javascript bind -
Vue 不使用eslint可以吗
安装node.js vue-cli脚手架的安装需要使用node.js的环境,所以安装前必须安装好node node.js官网:点这里 使用cnpm(本处是使用淘宝镜像) 由
Vue 不使用eslint可以吗 vue 命令行 创建项目 node.js -
全部命中索引还是慢要怎么优化
当面试官抛出一个问题的时候,面试者的内心其实是很想把自己知道的东西迫切的说给面试官听。做过4年的面试官,这里总结一下经验,回答任何一个问题的时候应该要遵循:明确题意-->深入浅出-->举例说明-->总结,这四个步骤很重要,可以让你沉着冷静,思路清晰,避免尴尬。特别是面试官抛出一个比较宽泛的问题,例如:谈谈你对MySQL索引的理解。这种问题其实对面试者是很有益的,越宽泛越有可能涉及
全部命中索引还是慢要怎么优化 MySQL索引 MySQL大厂面试题 MySQL B+树 MySQL索引失效 -
李兴华 java进阶开发实战
接着上一篇继续第九章 Servlet程序开发 第一节:Servlet简介 , Servlet采用多线程处理方式 。 本章可跳过 第二节:第一个Servlet程序。展示了一个S
李兴华 java进阶开发实战 xml 标签库 表达式语言