ICEfaces

from Wikipedia, the free encyclopedia
ICEfaces
Basic data

developer ICEsoft
Current  version 4.0
(November 4, 2014)
operating system cross-platform
programming language Java
category Web framework , Ajax , Java
License Apache license
www.icefaces.org

ICEfaces is a JavaServer Faces (JSF) based Ajax framework for Java , which is developed by ICEsoft. Since November 2006, the project up to and including version 2 has been available under the Mozilla Public License (MPL) in addition to a commercial license . The current version of IceFaces (version 3) contains many components, some of which, however, are enhanced copies of PrimeFaces . For this reason IceFaces had to change their license from MPL to the Apache license used by PrimeFaces .

ICEfaces has an extensive library of components for the user interface with built-in Ajax functionality. This includes trees , tabs and menus , for example . These components can be used in a standards-compliant JSF page. In contrast to the usual components of a website, these can communicate with the web container via Ajax and reload data if necessary without the entire website having to be reloaded. The developer does not have to worry about the details of this communication, as it runs transparently in the background . With ICEfaces, you can develop Rich Internet Applications (RIA) without having to program JavaScript . The JavaScript code ultimately executed in the browser is generated by the framework at runtime.

ICEfaces is based on some web standards of the Java EE architecture. As mentioned above, these standards include JavaServer Faces , but also facelets and portlets . The conventional Java development environments can be used for development and no extensions such as B. a special plug-in is required. No plug-ins are required to run an ICEfaces application in the browser.

ICEfaces at a glance

Rich client functionality
ICEfaces can be used to create rich client-based Java EE applications. More than 50 components are available for this.
Open source
The Icefaces community has more than 45,000 registered users. The forum is actively maintained by Icesoft employees. However, Icesoft's business model is based on chargeable technical support and training.
Standard-oriented
ICEfaces is a pure JSF based Java enterprise solution. Developers can therefore work in their familiar development environment. There are also plugins for well-known development environments such as Eclipse or NetBeans .
Transparent Ajax
With component libraries, ICEfaces offers the possibility for Java / JSF developers to create Ajax applications with little effort. No JavaScript should be required for this, just JSF experience.
Integration ability
ICEfaces enables the common use of common Java frameworks, IDEs and application servers as well as third-party components and JavaScript effect libraries.
Ajax push
The technology known as Ajax Push enables server-based rendering of content on the browser . Ajax Push enables asynchronous communication between client browser and server, so that changed content can be reloaded without sending a new request.

Comparison with GWT

Like the Google Web Toolkit (GWT) and other comparable technologies, IceFaces also supports the component-based development of "Rich Internet Applications". In both cases, the dynamic behavior is based on asynchronous communication between client (web browser) and server (web or application server) (Ajax). An important difference between the two approaches is the generation of the UI markup on the client or server side. IceFaces creates the “markup” on the server side and then integrates it dynamically into the current document tree using a simple JavaScript function. The GWT does not transmit the "markup" itself, but the data that are necessary for its creation, e.g. B. Database information. The “markup” is then generated and updated on the client side. This results in the following differences:

  • higher requirements and processing load for the client due to the GWT, which can cause problems with mobile browsers (e.g. iPhone, iPad or Windows Mobile systems)
  • higher network load when using IceFaces, since the "markup" is more extensive than the application data
  • longer initial loading times for GWT and faster reaction to user actions within the session (reaction behavior similar to desktop applications)
  • GWT applications are more independent from the server and therefore function longer even if the client-server connection is interrupted

See also

  • Vaadin , pure Java framework similar to ICEfaces for creating rich Internet applications

Web links

Individual evidence

  1. ICEfaces Downloads