Buffalo
Buffalo
Buffalo:国人开发的AJAX应用框架
Buffalo是Amowa思想实现的关键组件。Buffalo中定义了Web远程调用的传输基础,并且将远程调用对象完整的序列化到了本地,成为可以被JavaScript编程触及的对象。Buffalo中的重要组件 - BuffaloBinding,提供了将JavaScript对象绑定到HTML元素的能力。这种绑定将是无侵入的,只需要在HTML元素中加入若干个不影响排版的属性,即可将数据与界面绑定。
Buffalo1.1之前的版本重要的功能主要集中于远程调用与Java对象/JavaScript对象之间的双向序列化,这个特性已经被众多的应用久经考验,被认为是健壮的。它大大减少了在Java对象与JavaScript对象之间需要考虑的细节,开发者可以更用心地进行业务设计和界面设计。1.2版本的推出,引入了新的众多的特性,包括:新的重新改写的Spring集成;与流行javascript库prototype的集成;支持浏览器前进后退按钮,等等。Buffalo努力使Web2.0的概念在这个小小的轻量级的框架中得到体现,让你的应用具备更丰富的表现。
Homepage: http://buffalo.sourceforge.net/
整合Ajax框架Buffalo2.0与Spring2.0
最近在学习一个国产的Ajax开源框架Buffalo,Buffalo是burlap协议的JavaScript实现,但是它为Amowa(面向异步消息的Web应用)/Ajax提供了更多的支持。开发者可以使用Buffalo为web应用更加容易的添加Amowa/Ajax特性;另外,随着开发者的要求,Buffalo开始逐渐加入了Web元素,使得Buffalo逐渐向一个全功能的、新型的Web框架逐渐靠近。目前Buffalo已经发布了2.0版本。...
buffalo与spring联合开发
Buffalo是 一个为java web项目而设计的轻量级AJAX框架。它是开源的(Apache License 2.0),最主要的是它使用起来方便而且学起来易上手。它主要解决在j2ee ajax开发中的常见问题。 Spring 是一个时下非常活跃的开源项目,是一个基于IoC和AOP技术的构架多层j2ee系统的框架。它模块化的很好,你在使用它是将会非常的自由,它从不强迫你必须在每一层中必须使用。...
绑定
Buffalo支持将对象值绑定到DOM成员上,包括form成员(text, password, hidden, radio, checkbox,select, textarea),table, form, div/span,它也能转换form到具体java类型的对象。它只提供了一种能绑定所有类型值到不同form成员的便捷方法。 你可以如此轻松地使用绑定: buffalo.bindReply("yourService.method", ...
特征
轻量级xml协议的JavaScript实现 Buffalo采用一个轻量级协议(burlap的子集,并对作了小幅修改) ,它非常利于web remoting,而且足够简单。Buffalo实现包含了javascript对象的序列化和反序列化。 完全支持java到javascript序列化/反序列化 任何调用在java端方法后的结果都将透明地序列化到javascript端,无论这个对象...
最佳实践
这里我们提供一些来自于真实项目的最佳实践。 这些实践提出了采用ajax的正确道路。请在你的项目中考虑它们。 用DTO直接代替domain对象 大多数ORM工具带给我们便利,尤其在处理对象关系上。在一个传统的java项目中,我们可以定义一个可用在多个层之间相容的domain对象。这即使在一个集群的应用中也是优良的,因为它们在...
Buffalo协议
在Buffalo2.0之前,Buffalo使用caucho的burlap协议。从2.0开始,Buffalo有了一个全新的协议定义和适合web的、更快速的实现。Buffalo采用这个基于xml的轻量级协议来序列化java对象。而javascript客户端把xml反序列化为javascript对象。当进行一次远程调用时,Buffalo客户端会把这个远程调用序列化为xml,然后java端(服务器端)进行反序列化。本文档涵盖了此协议...
如何...
如何... 开始一个Buffalo项目 在现有项目中增加Buffalo特征 从旧的版本升级 与Spring集成 把web页面中的from序列化为对象 自定义事件 数据绑定 浏览器前进/后退 访问/更新Session 开始一个Buffalo项目 请参考快速教程。这个教程说明如何建立一个新应用。或者下载Buffalo的发...
1 分钟教程
1 分钟教程 准备工作 请先下载最新版本的Buffalo,然后按照以下关系建立文件夹 buffalo-example WEB-INF/classes WEB-INF/lib script 拷贝 commons-logging.jar 和 buffalo-<version>.jar 到WEB-INF下的lib目录,拷贝 prototype.js 和 buffalo.js 到 script 文件夹. 修改 web.xml 在 WEB-INF 目录下建立或...
How to...
How to... Start a new buffalo project Add buffalo feature to existing project Upgrade from former versions Integrated with Spring Serializing a form on web page to an object Customize events Data binding Browser forward/back Access/Update Session 1 Start a new buffal...
1 Minute Tutorial
Prepare Please download the latest version of buffalo distribution. Create a directory structure as follows: buffalo-example WEB-INF/classes WEB-INF/lib script Copy commons-logging.jar, buffalo-version.jar to WEB-INF/lib, copy prototype.js, buffalo.js to script. Edit web.xml Create a web.xml in WEB-INF with c...