참고:http://ajaxpatterns.org/Ajax_Examples
Java Ajax Frameworks
From Ajax Patterns
See also Multi-Language_Ajax_Frameworks and Ajax_Frameworks.
Tacos Tapestry Components (dec 2005)
Tacos is an ajax engine/component library for ajax/dhtml based applications written in java for the Tapestry web framework.
- Written to be completely integrated with dojo javascript library, providing an extensive set of widgets/features.
- Requires little or no javascript knowledge to use, though any part of the process can be customized to your liking.
- Provides development tools making writing ajax applications much easier, such as a logging/debug console window for ajax/other javascript initiated requests.
- Component library hosts extensive set of production quality code, built in functionality includes Dialogs/Floating Windows/tons of effects/Tree/Autocompleter/Inline Editor/etc..
- Extensive form-based ajax support includes client side validation, field observers, partial form submissions, etc.
AjaxAnywhere (from September 2005)
AjaxAnywhere turns any set of existing JSP/JSF/Struts/Spring/etc.. components into AJAX-aware components without JavaScript coding. (Quick Start Demo).
- Does not break existing server-side MVC architecture.
- Less JavaScript to develop and to maintain. Absence of commonly accepted naming convention, formatting rules, patterns makes JavaScript code messier then Java/JSP. It is extremely difficult to debug and unit-test it in multi-browser environment. Get rid of all those complexities by using AjaxAnywhere.
- Easy to integrate. AjaxAnywhere does not require changing the underlying application code.
- Graceful degradation. Switch whenever you need between AJAX and traditional (refresh-all-page) behaviour of your web application. Your application can also support both behaviors.
- Open-source license (Apache 2).
AJAX JSP Tag Library
The AJAX JSP Tag Library is a set of JSP tags that simplify the use of Asynchronous JavaScript and XML (AJAX) technology in JavaServer Pages. This tag library eases development by not forcing J2EE developers to write the necessary JavaScript to implement an AJAX-capable web form.
- Autocomplete: Retrieves a list of values that matches the string entered in a text form field as the user types.
- Callout: Displays a callout or popup balloon, anchored to an HTML element with an onclick event.
- Select: Based on a selection within a dropdown field, a second select field will be populated.
- Toggle: Switches a hidden form field between true and false and at the same time switches an image between two sources.
- Update Field: Updates one or more form field values based on response to text entered in another field.
AJAX Java Server Faces Framework
The AJAX-JSF framevork designed for purposes simple convert any existing Java Server Faces Application to AJAX functionality. Most of existing components can be used as is or simple converted to AJAX support
- Worked sample MyFaces JSF Tree, table scroller, tabbed pane as AJAX components
- Open source Apache Software License. Proposal to MyFaces project.
- Minimal differences from JSF specifications
Direct Web Remoting (DWR) (2005)
Direct Web Remoting is a framework for calling Java methods directly from Javascript code.
- Like SAJAX, can pass calls from Javascript into Java methods and back out to Javascript callbacks.
- Can be used with any web framework - Struts, Tapestry, etc.
- Follows Spring-like KISS/POJO/orthogonality philosophy.
- Open-source license (Apache). By Joe Walker. Being incorporated into next WebWork release.
Echo 2 (from March 2005)
Echo 2 allows you to code Ajax apps in pure Java (Demo).
- Automatically generates HTML and Javascript.
- Co-ordinates messages between browser and server. Messaging in XML.
- Can hand-write custom Javascript components if desired.
- Open-source license (Mozilla Public License or GNU LGPL). From Next App, Inc..
Guise
Guise provides an elegant server-side component architecture that doesn't require developers to write HTML or JavaScript (Demo).
- A true application framework, written completely in Java.
- Allows developers to think in terms of component and events instead of HTML generation and DOM programming.
- Provides controls, modal dialogs, flyovers, and more.
- XHTML compliant.
- Flexible commercial license.
- Free full-featured development version available for immediate download.
ICEfaces
ICEfaces is a standards-compliant extension to JavaServer Faces (JSF) for building and deploying rich AJAX applications
- Smooth, incremental page updates with in-place editing and no full page refresh.
- User context preservation during page update, including scrollbar positioning and user focus.
- Asynchronous page updates driven from the application in real time.
- Fine-grained user interaction during form entry that augments the standard submit/response loop.
JSON-RPC-Java (April 2004)
JSON-RPC-Java is an AJAX RPC middleware that allows JavaScript DHTML web applications to call remote methods in a J2EE Application Server.
- Transparently maps Java objects to and from JavaScript objects using Java reflection.
- Handles marshalling/unmarshalling of arbitrarily complex nested data structures.
- Lightweight protocol similar to XML-RPC.
- Leverages J2EE security model with session specific exporting of objects.
JSP Controls Tag Library (December 2005)
JSP Controls Tag Library provides the lifecycle for portlet-like JSP components. The Library does not require a portal engine or other central controller. The components built with the Library can be used in any JSP-based application.
- Supports dual-mode components (non-Ajax and Ajax) therefore works even with Netscape 4.
- In non-Ajax mode components utilize synchronous HTTP request/response cycle via Redirect-After-Post pattern.
- In Ajax mode components are updated in-place.
- Component reload in non-Ajax mode is completely automatic and transparent.
- Transition between Ajax and non-Ajax mode is undetectable when Javascript turned on or off.
- Open-source Apache 2.0 licence.
- Demo
Struts-Layout
Struts-Layout is a tag library for Apache Struts which provides easy and fast interface creation. This is achieved by powerful tags which display panels, input fields, tables, treeviews, sortable lists, datagrids, popups, calendars, etc. With those tags customized at your own look&feel, some of the developers in your team have neither need to write nor even know HTML.
- The Struts-Layout tag library now allows to put Suggest fields on your web pages
- Open source license (Apache 2)
SWATO (2005)
SWATO (Shift Web Application TO...) is a set of reusable and well-integrated Java/JavaScript library that give you an easier way to shift the interaction of your web apps through the AJAX way.
- The server side Java library can be easily deployed in all Servlet 2.3+ compatible containers.
- The client side JavaScript library is base on prototype that can help you coding your JavaScript in the OO way.
- Using JSON to marshalling the data of your POJOs on server side.
- Providing a simple interface for your JavaScript code to interactive with the remote POJOs exposed to the client side. (RPC,cross domain access)
- Easy and flexible configuration using <servlet> and <filter> in web.xml and comes with Spring integration.
- Comes with several reusable component (Auto-suggest Textbox, JS Template, JS Logger, etc) that help you develop your web apps easier.
Online demo available at http://swato.throughworks.com
ThinkCAP JX: RAD Environment for AJAX, J2EE, and Open Source (Commercial Framework)
[1] Designed to build industrial strength transactional business applications
- Visual Workbench
- Based on over 20 open source projects including Struts, Hibernate, JFreeChart, and many more.
- 3-Tier Client/Server Development: Minimize Javascript by using server-side generation library of over 150 methods
- Handles Complex AJAX Updates: TransactionSafe guarantees no connection leaks and automates complex master-detail updates
- Rich Data-Aware Controls: Scrollable Updateable DataView [data-bound grid], Client Sorting, Outlook Bar, Accordion, Tab Panes, Trees, Autocomplete
- Smart Data Binding: Declarative binding to HTTP Request or Session Parms
- Client & Server Layout Management: Automatically directs component/AJAX call output to the appropriate default or named areas of a page.
WebORB for Java (from August 2005)
WebORB for Java is a platform for developing AJAX and Flash-based rich client application and connecting them with Java objects and XML Web Services. (Online examples)
- WebORB includes a client-side library called Rich Client System. The Rich Client System provides a simple one-line api to bind to and invoke any method on any Java object, XML Web Service or EJB.
- Supports synchronous and asynchronous method invocations
- Does not require any modifications on the server-side code, no need for custom method attributes, special signatures or argument types. * * Does not require design-time stub generation.
- Synchronous invocations return data from the same invocation (no callback needed). Asynchronous invocations rely on a callback.
- Any server side method can be invoked synchronously or asynchronously.
- Client application can request special activation modes for the server objects. As a result objects can easily become stateful without any special programming
- Provides a special API for handling database query results - server code can return DataSets or DataTables and the client presents it as a special RecordSet JavaScript object. The object provides a way to retrieve column names as well as row data
- Support data paging. Client applications can retrieve data in pages thus streamlining user experience.
- Supports all server-side argument types as well as return values - primitives, strings, complex types, arrays, native .net collections, remote references
- There are 2 editions available: Standard (free) and Professional (commercial license)
WidgetServer (2004)
WidgetServer enables you to code Ajax applications in pure Java.
- Automatically generates HTML and Javascript.
- Co-ordinates messages between browser and server.
- Can hand-write custom Javascript and HTML/CSS components if desired.
- Applications run as Web, Swing and Swing Client/Server Apps.
- Open-source license.
jWic
jWic is a java-based development framework for developing dynamic web applications with the convenience and familiarity of 'rich client' style programming.
- Component-based, event-driven programming model
- Controls are rendered using templates (i.e. Velocity)
- Dynamicaly updates a control using AJAX mechanisms
- Open-source licence (Apache Licence, Version 2.0)
ZK - AJAX/XUL Web Framework
ZK is an AJAX-based, event-driven, XUL-based, all Java framework designed to enable Web applications to have both rich user experiences and a simple programming model. With ZK, you represent and manipulate RIA in XUL/HTML components all running at the server, as simple as you did for years in desktop applications.
No JavaScript. No replication of business logic at the clients. No proprietary components. No compilation. ZK works with existent frameworks and technologies, such as JSF and Portals. The pace of adapting ZK is all under your control.
ZK is an open-source project with the following characteristics.
- XUL-based Components.
- Event Driven Model.
- Server-Centric Processing.
- Script in Java and EL Expressions.
- Demo
댓글 없음:
댓글 쓰기