📄 features.html
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Buffalo AJAX - Features</title>
<style type="text/css" media="all">
@import url("./css/maven-base.css");
@import url("./css/maven-theme.css");
@import url("./css/site.css");
</style>
<link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body class="composite">
<div id="banner">
<a href="index.html" id="bannerLeft">
<img src="images/buffalo-title.gif" alt="" />
</a>
<a href="http://sourceforge.net" id="bannerRight">
<img src="http://sflogo.sourceforge.net/sflogo.php?group_id=178867&type=1" alt="" />
</a>
<div class="clear">
<hr/>
</div>
</div>
<div id="breadcrumbs">
<div class="xleft">
Last Published: 10/08/2006
</div>
<div class="xright"> <a href="http://www.amowa.net/buffalo/zh">Chinese Docs</a>
</div>
<div class="clear">
<hr/>
</div>
</div>
<div id="leftColumn">
<div id="navcolumn">
<h5>Quick Start</h5>
<ul>
<li class="none">
<a href="tutorial.html">1 Minute Tutorial</a>
</li>
<li class="none">
<a href="http://demo.amowa.net/buffalo-demo/">Demo</a>
</li>
<li class="none">
<a href="download.html">Download</a>
</li>
<li class="none">
<strong>Features</strong>
</li>
<li class="none">
<a href="faq.html">FAQ</a>
</li>
</ul>
<h5>Mastering Buffalo</h5>
<ul>
<li class="none">
<a href="best_practice.html">Best Practise</a>
</li>
<li class="none">
<a href="howto.html">How to...</a>
</li>
</ul>
<h5>Reference</h5>
<ul>
<li class="none">
<a href="jsapi.html">JavaScript API</a>
</li>
</ul>
<a href="http://maven.apache.org/" title="Built by Maven" id="poweredBy">
<img alt="Built by Maven" src="./images/logos/maven-feather.png"></img>
</a>
</div>
</div>
<div id="bodyColumn">
<div id="contentBox">
<div class="section"><h2>Features</h2><div class="section"><h3>JavaScript implementation of a lightwight xml protocal</h3><p>Buffalo is using a lightweight protocal(a subset of burlap with minor modification) and it is very good for web remoting, simple yet enough. Buffalo implementation is including seserializing and deserializing for javascript objects.</p></div><div class="section"><h3>Full support for java to javascript serializing/deserializing</h3><p>Any method invokation result at java side, will be serialize to javascript side transparently, no matter how complicated of this object is. Burlap can serialize from primitive type (String, int, long, boolean, etc) and Object type(List, Map even your own business domain object). You can access the same property at the javascript side. This sophiscate feature has been proven in various real projects.</p><p>The client javascript:</p><div class="source"><pre>buffalo.remoteCall("userService.listAll",[],function(reply){
var userList = reply.getResult();
var firstUserFamilyName = userList[0].name.familyName;
});
</pre></div></div><div class="section"><h3>Callback based programming model</h3><p>Every remote call could be like below:</p><div class="source"><pre>var buffalo = new Buffalo("/bfapp/buffalo");
buffalo.remoteCall("userService.login",["username","password"], function(reply) {
var success = reply.getResult();
if (success) {
alert("You login successfully");
} else {
alert("user name or password incorrect!");
}
});
</pre></div><p>This kind of API is very easy to learn and use. Every user could use it in half an hour.</p></div><div class="section"><h3>Support asynchonize events</h3><p>Love the gmail-like loading? buffalo give you! When calling the remote method, a loading panel is shown on the top-right corner of the browser. You can also customize onLoad, onFinish, onError events to display your own infomation.</p></div><div class="section"><h3>Straightforward, easy to use API</h3><p>Buffalo developers try their best to make the API easy to use on both server side and client side. The buffalo users do not need to know the detail implementation.</p><ul><li>Server side. Every POJO can be exposed as a buffalo service. No need to write buffalo specified java file.</li><li>Client side. What the users need is only one Buffalo Object with a couple of methods. It is so easy that every user could get used of it in less than half an hour.</li></ul></div><div class="section"><h3>Integrated with prototype javascript library</h3><p>Buffalo client scripts build on top of the famous prototype library, using its class facility and element selector. You can get the benefit directly from prototype provided convenient infrastructure.</p></div><div class="section"><h3>Spring integration</h3><p>Spring is the most popular IoC container. Every bean managed by spring can be used as buffalo service with simple configuration.</p></div><div class="section"><h3>Compatibility</h3><p>All features support IE/Firefox, remoting features support IE5.5+/Firefox1.0+/Safari/Opera9+.</p></div><div class="section"><h3>Browser back/forward support</h3><p>Most the AJAX applications does not support browser back/forward, such as MSN Live Mail. Buffalo solve this problem. What you need to do is add a reference of buffalo-blank.html as iframe, and use buffalo.switchView to navigate your page, you will find the navigation will work well on your browser. (Tested on IE/Firefox)</p></div><div class="section"><h3>Support data binding</h3><p>For most common used elements in HTML, buffalo provide the binding feature, which can bind the javascript object to the element. Now we support text, checkbox, radio, textarea, select, span/div, table.</p></div></div>
</div>
</div>
<div class="clear">
<hr/>
</div>
<div id="footer">
<div class="xright">©
2004-2006
</div>
<div class="clear">
<hr/>
</div>
</div>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -