Browser-based application frameworks are generally divided into two types: Aplication frameworks: Provides browser capabilities, but the most notable is the creation of a desktop GUI through a window-generating component. Infrastructural frameworks: Provides basic framework functionality and lightweight browser-side operations for developers to create specific applications, including: Browser interaction based on XMLHttpRequest Components XML parsing and operational functions Appropriate DOM operations based on XMLHttpRequest's return information Some special cases, and other browser-side technologies such as Flash (or Java Applets) are assembled together to apply
Server-side application frameworks typically work in the following two ways (although they are categorized according to different languages) Html/js Generation (html/js generation): Generate HTML and JS code via server-side to run directly to the browser side Remote interaction: JavaScript invokes a server-side function (such as invoking a Java function) and returns a callback handle to JavaScript, or requests server-side data information, such as session information, database queries, and so on.Directory 1 Pure javascript:application Frameworks 1.1 Bindows 1.2 Backbase 1.3 DOJO 1.4 Open Rico 1.5 qooxdoo 1.6 Tibet 1.7 ajfor M 2 Pure javascript:infrastructural Frameworks 2.1 Ajaxcaller 2.2 Flash Javascript Integration Kit 2.3 Google AJAXSLT 2.4 Htmlhttprequest 2.5 Interactive Website Framework 2.6 libxmlhttprequest 2.7 majax 2.8 rslite 2.9 Sack 2.10 Sarissa 2.11 X Hconn 3 Server-side:multi-language 3.1 cross-platform asynchronous INterface Toolkit 3.2 SAJAX 3.3 javascipt Object Notat Ion (JSON) and JSON-RPC 3.4 Javascript Remote scripting (JSRS) 3.5 bitkraft for ASP.net 4 Server-side:java 4.1 for Java 4.2 Echo 2 4.3 Direct Web Remoting (DWR) 4.4 Swato 4.5 ajax JSP Tag Library 4.6 ajax java Server Faces Framework 5 S Erver-side:lisp 5.1 Cl-ajax 6 server-side:. NET 6.1 Weborb for. NET 6.2 ajax.net 6.3 comfortasp.net 6.4 ajaxaspects 7 Ser Ver-side:php 7.1 ajaxac 7.2 jpspan 7.3 xajax 8 Server-side:ruby 8.1 Ruby on Rails
? 1. Pure javascript:application Frameworks 1.1 Bindows (established in 2003)
Bindows is a complete suite of Windows desktop Web application solutions that are combined with strong technologies such as DHTML, JavaScript, CSS, and HTML. Bindows need not download installation client support components (such as Java, ActiveX or Flash), only one browser. The idea of pure oo is anywhere in bindows, and bindows may be the most complete and powerful AJAX application platform I've ever seen.
Bindows is a commercial program that uses technology from MB (headquartered in GA USA, the main development center in Sweden, founded in 2002).
The Bindows Framework provides features and features: A complete Windows desktop system based on the Object-oriented technology classes and APIs, supporting a variety of feature window modes, including menus, forms, tables, sliders, measuring instrument windows, and other Windows window features. is to develop Zero-footprint (0 space occupancy) SOA client application Preferred Toolkit native XML,SOAP and XML-RPC support for single user to enterprise development support built in perfect AJAX support
Bindows Development environment: support for enterprise-scale project development cross-browser, cross-OS platform support not constrained by server structure good development interface with new, existing resource interoperability
? 1.2 Backbase (founded in 2003)
Backbase is a complete browser-side framework that provides rich browser-manipulation capabilities as well as the right. NET and the Java platform integration.
Commercial products from Backbase B.V (headquartered in Amsterdam, founded in 2003).
? 1.3 DOJO (in development, founded in September 2004)
Dojo provides complete lightweight window components and browser-Server message mapping support provides a framework for creating custom JavaScript window components supports prefabricated rich window type libraries b/s message maps support--xmlhttprequest and other mechanisms Support for URL manipulation in browsers open source license (academic free License 2.1), led by JotSpot's Alex Russell. 1.4 Open Rico (in development; founded in May 2005; Based on an early proprietary framework)
Open Rico is a multipurpose framework that supports AJAX architecture and user interaction. A XMLHttpRequest response can be invoked by one or more Dom objects, or by JavaScript objects. Support for drag-and-drop operations supports AJAX-based animation patterns, such as scaling and transformation, which are based on behaviors operating library usage guidelines, provided by Russmirimar's Yonah. Originated from the Sabre Airlines solution, maintained by Bill Scott,darren James and others.
? 1.5 Qooxdoo (in development; Founded in May 2005)
Qooxdoo is another fast-growing application framework that provides extensive UI support and is developing features such as infrastructure. Infrastructure features: Easy to capture and manipulate DOM events support debugging a timer class that supports one time operation Getter/setter support UI: Window component library and frame interface layout management image caching and transparent PNG image processing open source (LGPL). 1.6 Tibet (in development; Founded in June 2005)
Tibet provides a large number of portable and complete JavaScript APIs, which enable rapid generation of a large number of client-side code, Tibet claiming to be enterprise-class Ajax. Remote script invocation encapsulated in XMLHttpRequest URI support supports all HTTP events, no longer just get and post low-level protocols-file://and WebDAV can also normally use WEB Services invocation support as HTTP, including soap, XML-RPC and so on large JavaScript object libraries a wide variety of xml-based operations support IDE and developer Tools Open Source Protocol (OSI) 1.7 ajform (founded in June 2005)
Ajform is an easy-to-use AJAX framework that is used to write entry-level Ajax code that provides the following features: three-step installation automatically supports arbitrary HTML form elements with almost no coding to achieve Ajax 2 Pure javascript:infrastructural frameworks 2.1 Ajaxcaller (created in May 2005, currently Alpha)
Ajaxcaller is a XMLHttpRequest component with multi-threaded security access, primarily for Ajax developers, and is still in the alpha development phase, only used in Ajaxpatterns's online search paradigm. Support for Xmlhttrequest objects by using plaintext or XML structure data implementation and server interaction (Get/post/put/delete) (destroying objects, C + + support for memory object refactoring operations) support response cache (still in plan) Simple library file code is easy for beginners to learn to use, and support script Debug Open Source Protocol 2.2 Flash JavaScript integration Kit
The Flash JavaScript integration Kit enables the integration of Flash and JavaScript script implementations. You can implement a call to Flash ActionScript script in JavaScript and vice versa. Delivery calls in different environments that support almost the main data types of both parties. Open source Agreement, there are several flash open source enthusiasts maintenance. 2.3 Google ajaxslt (June 2005 issue)
Google Ajaxslt, a JavaScript framework, is used to perform XSLT transformations and XPath queries. This is currently used on the Google map. Open Source Protocol (BSD ) 2.4 htmlhttprequest (Beta; Founded in 2005)
the biggest feature of Htmlhttprequest is the use of XMLHttpRequest objects and standard HTML tag iframe to maximize the Cross-platform Ajax support across the browser, The principle is to invoke XMLHTTP on browsers that support XMLHttpRequest, and if not, use an IFRAME to simulate asynchronous interaction. Browsers currently supported: Ie6/win, Ie5.5/win, Ie5/win, Ie4/win, Mozilla/win, Opera7/win, Safari/mac, Ie5/mac not tested browsers: Ie4/mac, Mozilla/ Mac, Opera/other, Konqueror/linux. Open Source Protocol (LGPL ) 2.5 Interactive Website Framework (founded in 2005)
The Interactive Website Framework locates open source projects in browsers that support a wide variety of AJAX based applications. An interactive web framework that boasts high performance through JavaScript, CSS, XML, and HTML, including a customizable, readable XML parser. In fact, the IWF is an AJAX-based framework and includes some common scripting code. Implements thread-safe XMLHttpRequest to encapsulate XML document to create more readable code:
var node = doc.groceries.frozen[0].pizza[0].size; The encapsulated data reads var node = doc.documentElement.firstChild.firstChild.getAttribute ("size"); Original DOM operations read Open source protocol 2.6 libxmlhttprequest (released in June 2003)
Libxmlrequest is a small xmlhttprequest package with Getxml () and Postxml () two events simplified Xmlhttpreuqest invocation support XMLHttpRequest Object pool Response cache processing Source code can be used, but has copyright protection. 2.7 Majax
Majax is another very compact HttpRequest package that provides a simple interface for sending and receiving character information and sets the callback interface for each action. 2.8 rslite (x)
Rslite is a XMLHttpRequest packaged component that is released separately as part of Brent Ashley's JSRs (JavaScript Remote scripting). Details can be seen JSRs introduction 2.9 Sack (in development, founded in May 2005)
Sack is also a very name for a miniature XMLHttpRequest package. The caller can customize the callback function or a DOM object. By using the callback DOM object, you can embed response data back into the DOM directly as text. 2.10 Sarissa (released in February 2003)
Sarissa is a JavaScript API that encapsulates the ability to invoke XML independently at the browser end. Portable XMLHttpRequest Objects Create portable XPath query portable DOM Manipulation Portable XSLT Portable XML Serialization Open source Protocol (GPL2.0 and LGPL2.1) 2.11 Xhconn (Released April 2005)
Xhconn is also a small XMLHttpRequest packaging library. The author also uses the modified Xhconn, which is characterized by simple calls, and the code is clearly readable. Example: New Xhconn (). Connect ("mypage.php", "POST", "Foo=bar&baz=qux", Fnwhendone); Open Source Agreement license 3 server-side:multi-language 3.1 cross-platform asynchronous INterface Toolkit (May 2005)
Cpaint is a real Ajax and JSRS toolkit that supports both PHP and Asp/vbscript scripts. Cpaint provides the Ajax and JSRS code you need in the background and automatically returns to the browser-side corresponding JavaScript scripting code, which is easy to feed back to the requirements of the Web application. Support for PHP and ASP all functional functions support remote scripting and XML support in a unified JavaScript file local and remote function calls can create a single or multiple XMLHTTP object returned to the background of data that can be text or Xml/dom document objects Enables post and get access to remote functions and data using server-side proxies most browsers test normal use under the GNU, GPL, LGPL Open Source Agreement protection issue 3.2 SAJAX (March 2005)
SAJAX implementations are unique, such as invoking a JavaScript method, X_calculatebudget (), which will first upload the response to the server and invoke a Java Calculatebudget () method. The value is then returned to X_CALCULATEBUDGET_CB () in JavaScript mode. Sajax's reputation is good, it is estimated that a lot of people have heard or even used, but the disadvantage is that it's this set of mapping theory, far less than some lightweight packaging library easy to use, but sajax the biggest feature is the support of the platform is rich, almost include the web under the Common programming language and platform Easy to map from JavaScript functions to server-side proxy operations support multiple platform (asp/coldfusion/io/lua/perl/php/python/ruby) Open Source protocol 3.3 Javascipt Object notation (JSON) and Json-rpc
JSON is a "face-free" XML, and Json-rpc is a remote interaction protocol, similar to XML-RPC, with a strong support for JavaScript support for multiple-server platforms: Java, Python, Ruby, Perl. There are different packages and license agreements for different platforms, such as Json-rpc-java. 3.4 JavaScript Remote scripting (JSRS) (2000)
JSRs, a more classic remote scripting access component, supports the remote data/operation interaction of the client data through the server proxy. Supported browsers: Ie4+,ns4.x,ns6.x,mozilla,opera7 and Galeon. Server-side scripting language support: Asp,coldfusion,perlcgi,php,python and JSP (servlet). Open source Protocol. The support is provided by Brent Ashley. 3.5 bitkraft for asp.net
Bitkraft is a CLR (common language Runtime) based on the (. NET) Web framework that allows you to create and manipulate distributed Web content in a unique way. Written in C #, running under Microsoft's. NET 1.1 and Mono framework, seamless client-server response is its greatest feature. Instead of using XML to organize data, Bitkraft uses JSON instead. Supported browsers: ie5+, firefox1+, NS6 server-side requirements: asp.net, Mono xsp, Cassini, Apache (Modmono). NET Framework 1.1+ Event-driven remote proxy clients that support synchronous and asynchronous Support for all. NET type or custom class object mapping to JSON replaces XML with JSON free, open source license Agreement 4 Server-side:java 4.1 weborb for Java (August 2005)
Weborb for Java is a development platform for developing Ajax and Flash based rich client applications. The online example Weborb includes a rich client development class library. Provides a simple online API to bind or invoke any Java object, XML Web services, and EJB to support asynchronous or synchronous event-driven no need to modify any code on the server, no custom methods or properties, variables, and so on. Do not require the design-time designation of agents. Synchronous calls do not require callbacks, and asynchronous calls require a callback method. The client can request the specified activity mode to the server side, and the processing result can be easily turned into state without any programming required. Provides a specific API to handle database query results-server code can return a dataset or DataTable, and the client displays this result with a JavaScript object similar to the recordset. This object provides methods for retrieving column names and row data. Support Data paging technology. The client application can retrieve data from the page. Supports returning all service-side data types as parameters, such as primitives, strings, complex types, arrays, native. NET collections, remote references currently has two versions: Standard Edition (free), Professional Edition (commercial license) 4.2 Echo 2 (March 2005)
Echo 2 allows you to write AJAX programs in a pure Java language. Demo. Automatically generate HTML and JavaScript code to deliver messages in XML on the client-server side if you are willing to support the custom JavaScript component Open Source Protocol (Mozilla public License or GNU LGPL) 4.3 Direct Web Remoting (DWR) (in)
Direct WEB Remoting An application framework that can invoke Java methods directly in JavaScript code is similar to Sajax, which can transmit request calls in JavaScript to Java methods and return execution results to JavaScript Can be used with any web framework, such as struts, tapestry, and so on open source (Apache), which is currently added to the webwork 4.4 swato (in)
Swato is a reusable and well integrated Java/javascript library that implements an easier way to change the interaction of your Web application through Ajax. The server-side Java library can be easily deployed to all servlet2.3+-compliant containers where client-side JavaScript libraries can be used to organize POJO data on the server using JSON technology in all browsers that support XMLHttpRequest. This allows you to access these remote data in any JavaScript environment (HTML, XUL, SVG), which can easily be integrated into the current application through hard coding or some mature JavaScript library Provides a simple interface that allows you to invoke remote Pojo data in JavaScript using <servlet> and <filter> flexibly configured in Web.xml, and can integrate (not necessarily) into your spring framework Provides several components to help you quickly develop Web applications (such as AutoComplete text boxes, online forms, online listings, and so on) 4.5 AJAX JSP Tag Library
The Ajax JSP Tag Library is a set of JSP tag libraries that are used to develop AJAX programs. You can easily develop AJAX-mode Web Forms under the Java EE without JavaScript. The tag library provides 5 tags for more general Ajax features: AutoComplete: Users enter characters in text boxes, automatically match user input characters from specified data, similar to Google suggest callout: You can add bubbles to a message box for a tag, But real-time service-side data Select/dropdown: Similar to the linkage menu, such as the prefectures linkage drop-down box Toggle: Switch-gate buttons, such as storing true and falsh in a hidden form field, and displaying the corresponding IMG image update Field: Update data, i.e. no refresh commit. 4.6 AJAX Java Server Faces Framework
The AJAX-JSF is used to transform any JSF application into an AJAX application example: Myfaces JSF tree for AJAX components, table scroller (scrollable table), tabbed pane (page bar) Open Source Association Discussion (Apache Software License) server-side:lisp 5.1 cl-ajax /c13>
Cl-ajax implement JavaScript direct call to server Lisp generate functions with parameters you can callback JavaScript functions or DOM objects can be integrated into Sajax open source license 6 server-side:. NET 6.1 Weborb for . NET (August 2005)
Weborb for. NET is a. NET and XML Web services to develop Ajax and flash based rich client applications (online examples) Weborb includes a rich client development class library. Provides a simple online API to bind or invoke any. NET object, an XML Web service that supports asynchronous or synchronous event drivers do not need to modify any code on the server, no custom methods or properties, variables, and so on. Do not require the design-time designation of agents. Synchronous calls do not require callbacks, and asynchronous calls require a callback method. The client can request the specified activity mode to the server side, and the processing result can be easily turned into state without any programming required. Provides a specific API to handle database query results-server code can return a dataset or DataTable, and the client displays this result with a JavaScript object similar to the recordset. This object provides methods for retrieving column names and row data. Support Data paging technology. The client application can retrieve data from the page. Supports returning all service-side data types as parameters, such as primitives, strings, complex types, arrays, native. NET collections, remote references currently has two versions: Standard Edition (free), Professional Edition (commercial license) 6.2 ajax.net (March 2005)
Ajax.NET is the first free library to support various ways of accessing server. NET via JavaScript similar to Sajax, which can send JavaScript requests to. NET methods, service-side back to JavaScript, and even serialization of custom classes. can access session and application data cache query results in JavaScript free use of source code without changing the source code, allow to add and modify methods and properties for Ajax.NET all classes support JavaScript client return data. You can use Dataset:res.tables[0 in JavaScript. Rows Use the HtmlControls component to access and return data pages without overloading, with the event agent (data access layer) because only one call interface method is provided, the server- side CPU consumes very little 6.3 comfortasp.net ( August 2005)
Comfortasp.net can let developers in pure. NET to develop applications that resemble Ajax (Dhtml,javascript,xmlhttp) features. Quick response reduces HTML transfer reduces page overload browser content changes without blinking Ajax user experience, 6.4 ajaxaspects (August 2005)
Ajaxaspects is an engine that can use JavaScript to invoke server-side WebService events with standard SOAP and WSDL for server-client communication support with parameter return value caching with simple types and XML objects support action queues for free use, Open source Agreement 7 server-side:php 7.1 ajaxac (April 2005)
Ajaxac encapsulates the full application functionality with a separate class all functionality integration in a self-contained class (plus some JavaScript libraries) to invoke PHP files or HTML pages is easy, Simply create the app class and pass the class reference to the JavaScript object or HTML element that needs to be invoked. Capturing JavaScript events allows you to customize configuration data and support Run-time parameter changes without the messy HTML code in the JavaScript code, all events are dynamically attached because of the above two advantages, a good template engine is supported Easy to hook to PHP class and MySQL data has returned to its own request to be able to easily create windowed mode applications with JavaScript. 7.2 jpspan
Jpspan calls functions in PHP directly from JavaScript. conducted a rigorous unit test open source License (PHP) 7.3 xajax
Xajax through JavaScript directly invoke functions in PHP to support JavaScript invoke PHP script Open source license Agreement 8 Server-side:ruby 8.1 Ruby on Rails
Ruby on Rails is a complete web framework that supports AJAX, written in Ruby language, and developed in strict accordance with the MVC architecture. When Ajax appeared, Rails was in the early stages of its development, so Ajax could become the core of the rails framework. Generates a JavaScript script for most/all of the window application components and animations in the browser. Supports server-side calls. Queue supports open source license