FACTOID # 151: More than half the people in Uganda are under 14 years old.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

Encyclopedia > JavaServer Faces

JavaServer Faces (JSF) is a Java-based Web application framework intended to simplify development of user interfaces for Java EE applications. Unlike other traditional request-driven MVC web frameworks, JSF uses a component-based approach. The state of UI components is saved when the client requests a new page and then is restored when the request is returned. Out of the box, JSF uses JavaServer Pages (JSP) for its display technology, but JSF can also accommodate other display technologies (such as XUL). JSF includes: Image File history File links Question_book-3. ... Java language redirects here. ... A web application framework is a software framework that is designed to support the development of dynamic websites, Web applications and Web services. ... Computer software (or simply software) refers to one or more computer programs and data held in the storage of a computer for some purpose. ... The user interface is the part of a system exposed to users. ... Java 2 Platform, Enterprise Edition or Java EE (formerly also J2EE) is a programming platform — part of the Java platform — for developing and running distributed multi-tier architecture applications, based largely on modular components running on an application server. ... This article or section should include material from Model view controller triad Model-View-Controller (MVC) is a software architecture that separates an applications data model, user interface, and control logic into three distinct components so that modifications to the view component can be made with minimal impact to... // JavaServer Pages (JSP) is a Java technology that allows software developers to dynamically generate HTML, XML or other types of documents in response to a Web client request. ... XUL (pronounced zool ()), the XML User Interface Language, is an XML user interface markup language developed by the Mozilla project for use in its cross-platform applications, such as Firefox. ...

The JSF specification was developed under the Java Community Process as JSR 127, which defined JSF 1.0 and 1.1, and JSR 252 which defined JSF 1.2. Upcoming JSF 2.0 is being developed as JSR 314. API redirects here. ... // JavaServer Pages (JSP) is a Java technology that allows software developers to dynamically generate HTML, XML or other types of documents in response to a Web client request. ... // JavaServer Pages (JSP) is a Java technology that allows software developers to dynamically generate HTML, XML or other types of documents in response to a Web client request. ... JavaServer Pages (JSP) is a Java technology that allows software developers to dynamically generate HTML, XML or other types of documents in response to a Web client request. ... In computer networking, the term server-side refers to operations that are performed by the server in a client-server relationship. ... The event model is a programming paradigm commonly used in building graphical user interfaces. ... In software programming, a managed bean - sometimes simply referred to as an MBean - is a type of JavaBean, created with dependency injection. ... JavaBeans are software components written in the Java programming language. ... Dependency injection (DI) is a programming architectural model, sometimes also referred to as inversion of control or IOC although, technically speaking, dependency injection specifically refers to an implementation of a particular form of IOC. // Dependency Injection describes the situation where one object uses a second object to provide a particular... The Java specification writers and expert groups of the Java web-tier technologies have worked on a unified expression language which is now part of the JSP 2. ... The Java Community Process or JCP, established in 1995, is a formalized process which allows interested parties to be involved in the definition of future versions and features of the Java platform. ...

Contents

JSF versions

  • JSF 1.0 (2004-03-11) — the initial release of the JSF specification.
  • JSF 1.1 (2004-05-27) — bug fix release. There were no spec or HTML renderkit changes.
  • JSF 1.2 (2006-05-11) — latest release.
    • enhancements to provide an interim solution to the content-interweaving problem described at http://www.onjava.com/pub/a/onjava/2004/06/09/jsf.html
    • provide XML Schema for the config files, instead of using DTD
    • enhancements to allow faces applications to handle multi-frame, or multi-window UI designs
    • enhancements to the f: tag library for improved TCK coverage, f:view lifetime events, and other small features
    • enhancements to the decorator support for API objects
    • security enhancements for client side state saving
    • solve the "duplicate button press" problem
    • re-organize the spec into normative, and non-normative sections, to make implementation easier
    • portlet related bug-fixes
    • bug fixes that require minimal specification changes
  • JSF 2.0 (expected in 2008) - major revision of the specification under development. Planned to coincide with Java EE 6.

Year 2004 (MMIV) was a leap year starting on Thursday of the Gregorian calendar. ... is the 70th day of the year (71st in leap years) in the Gregorian calendar. ... Year 2004 (MMIV) was a leap year starting on Thursday of the Gregorian calendar. ... is the 147th day of the year (148th in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... is the 131st day of the year (132nd in leap years) in the Gregorian calendar. ... A technology compatibility kit (TCK) is a suite of tests that at least nominally checks a particular alleged implementation of a Java Specification Request (JSR) for compliance. ... For decorators in Python, see Python syntax and semantics#Decorators. ... Java Platform, Enterprise Edition or Java EE is a widely used platform for server programming in the Java programming language. ...

Comparison to other Web-GUI Frameworks

Struts

Main article: Apache Struts

Struts is a popular Model 2 MVC framework from the Apache Software Foundation. It provides page-at-a-time MVC and does not have a component model in the style of JSF. Pages are mapped to models with a dispatch servlet (controller) piping input to actions. Struts applications use JSPs to render views and are amenable to mix-and-match jsp taglib use. (See also Apache Beehive) For the part of a car, see strut or suspension (vehicle). ... In the design of Java Web applications, there are generally used two design models called Model 1 and Model 2. ... This article or section should include material from Model view controller triad Model-View-Controller (MVC) is a software architecture that separates an applications data model, user interface, and control logic into three distinct components so that modifications to the view component can be made with minimal impact to... Apache Software Foundation Logo The Apache Software Foundation (ASF) is a non-profit corporation (classified as 501(c)(3) in the United States) to support Apache software projects, including the Apache HTTP Server. ... Apache Beehive is a Java Application Framework designed to make the development of Java EE based applications quicker and easier. ...


WebObjects / Wotonomy

Main articles: WebObjects and Wotonomy

WebObjects is the earliest known web-application framework and was originally developed by NeXT Software, Inc. then acquired by Apple Computer when it acquired NeXT. It contains an MVC architecture with a component and event model and lifecycle similar to JSF. It is deployable without J2EE (its original configuration), or can be deployed in a servlet container — its dispatcher object acting as the entry-point of a J2EE web application. Unlike JSF's default case, components are not defined in JSP files but are in .wo directories containing any or all of html/xml/wml template files, a .wod file to map fields and actions to Java code, and a .java class. A template file provides the rendering/layout and may include other WebObjects components, rather than the delegated RenderKit approach used by default in JSF. It is a halfway-point between the delegated and directly-rendered approaches used in JSF. WebObjects is a Java Web application server by Apple Computer. ... For other meanings, see Next. ... Apple Inc. ...


WebObjects also includes a layered architecture with one of the earliest Object-Relational Mapping frameworks, Enterprise Objects Framework. Object-Relational mapping (aka O/RM, ORM, and O/R mapping) is a programming technique for converting data between incompatible type systems in databases and object-oriented programming languages. ... The Enterprise Objects Framework (or more commonly, EOF) was introduced by NeXT in 1994 as a pioneering object-relational mapping product for its NeXTSTEP and OpenStep development platforms. ...


Wotonomy is a clean-room, open-source re-implementation of the WebObjects frameworks licensed under LGPL. It attempts to implement all parts of WebObjects, and has implemented the whole MVC web-GUI stack. As a clone of WebObjects, it differs from JSF in identical ways, except where it is incomplete. GNU logo The GNU Lesser General Public License (formerly the GNU Library General Public License) is an FSF approved Free Software license designed as a compromise between the GNU General Public License and simple permissive licenses such as the BSD license and the MIT License. ...


Apache Tapestry

Tapestry is an open-source framework for creating dynamic, robust, scalable web applications in Java. Tapestry builds upon the standard Java Servlet API, and so it works in any servlet container or application server. Unlike JSF, Tapestry does not use JSP as the default view technology — instead preferring an alternate templating engine that allows for easy html preview and editing (similar to the JSF-based Facelets). Tapestry is a Java-based programming toolkit that uses XML to implement applications in accordance with the model-view-controller design pattern. ...


Microsoft ASP.NET

Main article: ASP.NET

JSF features a component based approach to WebApplication development similar to ASP.NET from Microsoft. In ASP.NET v1, component rendering code was bundled with the UI component, unlike JSF, where rendering and component interfaces can be separated, thus allowing for customization of the renderer. ASP.NET v2 introduced the control adapter framework allowing the default rendering to be overridden by third-party code. ASP.NET logo ASP.NET is a web application framework marketed by Microsoft that programmers can use to build dynamic web sites, web applications and XML web services. ... Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual revenue of US$44. ... Tailoring specifically to an individual. ...


Business code is connected to the UI components by subscribing to events generated by the components and stored in a separate file ("code behind"). Thus a typical ASP.NET page consists of a (HTML) file describing the visual page layout (design), and a file with the page logic (code). Both files are treated as one single entity by the Microsoft development tools. Event-driven programming is a computer programming paradigm. ... HTML, an initialism of HyperText Markup Language, is the predominant markup language for web pages. ...


According to the author of the book Core JSF, JSF offers a means for Java to compete with ASP.NET/Visual Studio in the area of Rapid application development (RAD). The addition of the Sun Java Studio Creator IDE provides a RAD environment similar to Visual Studio 2005, potentially lowering development cost and other barriers to entry. Rapid application development (RAD), is a software development process developed initially by James Martin in the 1980s. ... Rapid application development (RAD), is a software development process developed initially by James Martin in the 1980s. ...


JSF and Ajax

JSF is often mentioned together with Ajax, a Rich Internet application technology. Ajax is a combination of technologies that makes it possible to create richer user interfaces. The user interface components in the JSF reference implementation and MyFaces were originally developed in HTML. Because JSF supports multiple output formats, Ajax-enabled components can easily be added to improve the quality of JSF-based user interfaces. The JSF 2.0 specification intends to improve support for Ajax by allowing UI logic to run partly on the client and not only on the server, and by providing support for graceful degradation when JavaScript is disabled in the browser. AJAX redirects here. ... For the geographical term, see ria. ... JavaScript is a scripting language most often used for client-side web development. ...


Ajax-enabled JSF components and frameworks

The following companies and projects offer Ajax-based JSF implementations or blueprints:

This article is being considered for deletion in accordance with Wikipedias deletion policy. ... // An Ajax framework is a framework that helps to develop web applications that use Ajax, a collection of technologies used to build dynamic web pages on the client side. ... JBoss (pronounced Jay Boss) is an open source Java EE-based application server implemented in Java. ... Apache MyFaces is an open-source JavaServer Faces implementation developed by the Apache Software Foundation. ... Sun Microsystems, Inc. ... Wikibooks has more about this subject: ZK ZK is an open-source, all Java, Ajax Web application framework that enables rich UI for Web applications with no JavaScript and little programming. ...

See also

GUI redirects here. ... For information regarding portals on Wikipedia, see Wikipedia:Portal. ... Jakarta Struts is an open-source framework for developing J2EE web applications. ... faces-config. ...

References

Books

Ed Burns is an Emmy Award winning television writer. ... James Holmes, a committer on the Struts project, is the creator of the most popular Struts tool, the Struts Console. ... David C. Geary is a notable United States cognitive developmental psychologist with interests in mathematical learning and in evolution. ... William Karnet Willis (born October 5, 1921 in Columbus, Ohio) was one of the dominant American football players of the 1940s and 1950s, and is an inductee in the College and Professional Football Halls of Fame. ... Craig R. McClanahan is a programmer and original author of the Jakarta Struts framework for building web applications. ...

External links

Metadata is data about data. ... This is a list of notable web application frameworks, used for creating web applications. ... ASP.NET logo ASP.NET is a web application framework marketed by Microsoft that programmers can use to build dynamic web sites, web applications and XML web services. ... The ASP.NET MVC Framework is a Model-view-controller framework which Microsoft is adding to ASP.NET. It allows an application to be built as a composition of three roles: Model, View and Controller. ... DotNetNuke is an open source [5] web application framework [6] written in VB.NET for the ASP.NET framework. ... MonoRail, a component of the Castle Project, is an open source web application framework built on top of the ASP.NET platform. ... ColdFusion is an application server and software development framework used for the development of computer software in general, and dynamic web sites in particular. ... ColdSpring is a framework for ColdFusion. ... Fusebox is a web application framework for ColdFusion and PHP. Originally released in 1997, it is currently in its fifth major incarnation. ... Mach-II is a framework for developing object oriented Model-View-Controller web-applications. ... Model-Glue is a pure OO framework based on the MVC design pattern. ... The onTap framework is an open-source framework for ColdFusion which in addition to providing an MVC controller like other ColdFusion frameworks also provides a wide array of feature-rich APIs for rapid application development, including true SQL language abstraction, form management and i18n internationalization features. ... Java language redirects here. ... Apache Cocoon, often just called Cocoon, is a web development framework built around the concepts of separation of concerns and component-based web development. ... For the part of a car, see strut or suspension (vehicle). ... AppFuse is an open-source project for developing J2EE web applications. ... Aranea framework is an an Open Source (APL 2. ... Click Framework is a modern JEE web application framework. ... The Cooee Web Application Framework is a Java framework for delivering AJAX, or Web 2. ... The Google Web Toolkit is an open source toolkit allowing developers to create Ajax applications in the Java programming language [1]. GWT supports rapid client/server development and debugging in any Java IDE. In a subsequent deployment step, the GWT compiler translates a working Java application into equivalent JavaScript that... Grails is an open source web application framework for high productivity. ... The word Hamlet has more than one use: Hamlet, Prince of Denmark is a play by William Shakespeare, and the main character therein. ... IT Mill Toolkit is a Ajax framework for developing web applications for enterprise and professional use with Java language on Server. ... ItsNat, Natural AJAX, is an innovative open source Java AJAX Component based Web Framework, it offers a natural approach to modern web development. ... JBoss Seam is a web application framework developed by JBoss, a division of Red Hat. ... Makumba is a query-centric application framework using the model-view-controller pattern and designed to develop data driven web applications. ... The Mentawai Web Framework is an opensource 100% Java MVC framework that is easy to use and has no XML configurations. ... OpenLaszlo is an open source platform for the development and delivery of web applications with a usable human interface (sometimes called rich Internet applications) on the World Wide Web. ... OpenXava is a web application framework for developing business applications in an effective way. ... Reasonable Server Faces (RSF) is an open source web programming framework written in Java, developed at the Centre for Applied Research in Educational Technologies (CARET) at the University of Cambridge. ... RIFE is a full-stack open source Java web application framework with tools and APIs to implement most common web features. ... Shale is a web application framework maintained by the Apache Software Foundation. ... SmartClient is a commercial Ajax framework created by Isomorphic Software. ... The Spring Framework (or Spring for short) is an open source application framework for the Java platform. ... Stripes is a presentation framework for building web applications using the latest Java technologies. ... Tapestry is a Java-based programming toolkit that uses XML to implement applications in accordance with the model-view-controller design pattern. ... ThinWire™ is an open source, Java based Rich Internet Application development framework that utilizes Ajax techniques to give Web Applications the look and feel of traditional GUI applications. ... WebObjects is a Java Web application server by Apple Computer. ... WebWork is a Java web-application development framework developed by OpenSymphony. ... Wicket is a web application framework for the Java programming language that reached version 1. ... Wikibooks has more about this subject: ZK ZK is an open-source, all Java, Ajax Web application framework that enables rich UI for Web applications with no JavaScript and little programming. ... Client-side JavaScript (CSJS) is JavaScript that runs on client-side, i. ... AJILE, pronounced Agile, is the Advanced JavaScript Importing & Loading Extension. ... Clean AJAX is an open source, cross-browser Ajax engine, inspired by Java Message Service, that uses messages to control the requests. ... To meet Wikipedias quality standards, this article or section may require cleanup. ... Echo is a web framework for Swing programmers. ... Ext (pronounced X-ed) is an open-source JavaScript library, for building richly interactive web applications using techniques such as AJAX, DHTML and DOM scripting. ... jQuery is a lightweight web application framework that emphasizes the interaction between JavaScript and HTML. It was released January 2006 at BarCamp NYC by John Resig. ... ASP.NET AJAX, formerly code-named Atlas, is a set of extensions to ASP.NET developed by Microsoft for implementing Ajax functionality. ... MochiKit is a light-weight Javascript library written and maintained by Bob Ippolito. ... Mootools is a compact, modular, Object-Oriented javascript framework designed to make writing extensible and compatible code easier and faster. ... The Prototype JavaScript Framework is a JavaScript framework created by Sam Stephenson that provides an Ajax framework and other utilities. ... qooxdoo (IPA: ) is an open source AJAX web application framework. ... Rialto is a cross browser javascript widgets library. ... Rico is an open source, JavaScript framework for creating and extending AJAX applications, offering as well several other somewhat arbitrary JavaScript functions and behaviors (such as Drag-and-drop objects and functionality to programmatically round the corners of web page elements). ... It is proposed that this article be deleted, because of the following concern: Non-notable software If you can address this concern by improving, copyediting, sourcing, renaming or merging the page, please edit this page and do so. ... SmartClient is a commercial Ajax framework created by Isomorphic Software. ... This article is considered orphaned, since there are very few or no other articles that link to this one. ... Yahoo! UI Library (YUI) is an open-source JavaScript library, for building richly interactive web applications using techniques such as AJAX, DHTML and DOM scripting. ... For other uses, see Perl (disambiguation). ... Catalyst is an open source Web application framework written in Perl, that closely follows the Model-view-controller (MVC) architecture, and supports a number of experimental web patterns. ... Maypole is a Perl framework for MVC-oriented web applications, similar to Jakartas Struts. ... Mason is the name of a Perl-based web site development and delivery engine. ... For other uses, see PHP (disambiguation). ... The Akelos PHP Framework is an open-source port of Ruby on Rails to the PHP programming language. ... CakePHP is an open source web application framework written in PHP, modeled after the concepts of Ruby on Rails, and distributed under the MIT License. ... CodeIgniter is an open source web application framework for use in building dynamic web sites with PHP. It enables developers to build applications much faster by providing a rich set of libraries for commonly needed tasks, as well as a simple interface and a logical structure to access these libraries. ... Drupal (pronounced ) is a free and open source modular framework and content management system (CMS) written in the programming language PHP. Drupal, like many modern CMSs, allows the system administrator to create and organize content, customize the presentation, automate administrative tasks, and manage site visitors and contributors. ... eZ publish is a popular enterprise open source content management system (CMS) and development framework. ... FUSE is a PHP framework created by Jim Keller that uses Model-view-controller architecture along with Object-relational mapping Data Modeling concepts to provide tools for rapid PHP development. ... Horde is a PHP-based Web application framework It offers applications such as the Horde IMP email client, a groupware (calendar, notes, tasks, file manager), a wiki and a time and task tracking software. ... Joomla! is a free, open source content management system for publishing content on the world wide web and intranets. ... Kohana is an open source web application PHP5 framework that uses the Model View Controller architectural pattern. ... MODx is an adaptable Web Content Management System plus a robust Content Management Framework. ... P4A - PHP For Applications is a RAD and object oriented web application framework written in PHP, for building event-driven stateful web applications. ... PHPOpenbiz is an open source effort aimed at producing a framework to encourage zero-coding application development. ... Prado may refer to: Land Cruiser Prado, a 4WD vehicle from Toyota Museo del Prado, an art gallery in Madrid Prado, Spain, a village in Castile-Leon the prado dam Prado River Miguelanxo Prado, a spanish comic book artist Ed Prado, a U.S. appeals court judge PRADO, a PHP... The QCodo Development Framework is an open-source PHP 5 framework which builds an Object Relational Model (ORM), CRUD (Create, Retrieve, Update, Delete) UI pages, and AJAX hooks from an existing data model. ... The subject of this article may not satisfy the notability guideline or one of the following guidelines for inclusion on Wikipedia: Biographies, Books, Companies, Fiction, Music, Neologisms, Numbers, Web content, or several proposals for new guidelines. ... SilverStripe is a free software / open source content management system (CMS) for creating and managing websites through a simple web interface. ... Symfony is a web application framework written in PHP which follows the model-view-controller (MVC) paradigm. ... Zend Framework is an open source, object-oriented web application framework implemented in PHP 5 and licensed under the New BSD License. ... Zoop Framework stands for Zoop Object Oriented PHP Framework. ... Python is a general-purpose, high-level programming language. ... CherryPy is a framework for object-oriented web development using the Python programming language. ... Django is an open source web application framework, written in Python, which loosely follows the model-view-controller design pattern. ... Karrigell is a web framework written in Python and published under the Open Source BSD licence. ... Nevow (pronounced like the French nouveau) is a Python web application framework. ... Porcupine is a Python based web application server that provides an object oriented framework for developing Rich Internet Applications rapidly. ... Pylons is an open source web application framework written in Python. ... Spyce is technology similar to PHP that can be used to embed Python code into webpages. ... TurboGears is a Python web megaframework created by bringing together a number of mature components such as MochiKit, SQLObject, CherryPy and Kid, along with some TurboGears specific code to make everything work together easily. ... Twisted is an event-driven networking framework written in Python and licensed under the MIT licence. ... Webware is a term used to describe a website that provides software-like services. ... Zope management interface in a web browser window. ... Ruby is a reflective, dynamic, object-oriented programming language. ... Camping is a web application framework which consistently stays at less than 4. ... Nitro is a Ruby based web application framework. ... IOWA is a framework, written in the Ruby programming language, for the development of both web based applications and more general dynamic web content. ... Ramaze is a modular Web framework written in the Ruby programming language. ... Cerise is a web/application server following the same general pattern as J2EE application servers, but written in the Ruby programming language and providing a very flexible, elegant, lightweight, and developer friendly environment for building web applications. ... Merb is a Model View Controller web framework written in Ruby. ... Ruby on Rails is a free web application framework designed to make web development faster, simpler and more efficient. ... Server-side JavaScript (SSJS) refers to JavaScript that runs on server-side. ... Firecat is a Server-side JavaScript webserver. ... Helma Object Publisher is an open source software package that provides JavaScript based server-side scipting language. ... Alpha Five is a database application produced by Alpha Software, similar to Microsoft Access and Filemaker Pro. ... Fusebox is a web application framework for ColdFusion and PHP. Originally released in 1997, it is currently in its fifth major incarnation. ... This article or section does not adequately cite its references or sources. ... For other uses, see PHP (disambiguation). ... The OpenACS logo The Open Architecture Community System (OpenACS) is an advanced open-source toolkit for developing community web applications licensed under the terms of the GNU GPL. The Open Architecture Community System provides: A large set of applications, that can be used to deploy web sites that are strong... Tcl (originally from Tool Command Language, but nonetheless conventionally rendered as Tcl rather than TCL; and pronounced tickle) is a scripting language created by John Ousterhout. ... Seaside is an open source web application framework for developing web applications in Smalltalk. ... For other uses, see Small talk. ... UnCommon Web is a web development framework for Common Lisp. ... “LISP” redirects here. ... Yaws (Yet another webserver) is a webserver written in Erlang. ... Erlang is a general-purpose concurrent programming language and runtime system. ...

  Results from FactBites:
 
Developing Web Applications with JavaServer Faces (3436 words)
JavaServer Faces technology is based on the Model View Controller (MVC) architecture for separating logic from presentation, so if you have been practicing this, you'll feel at home with JSF.
JavaServer Faces (JSF) is a technology that is being led by Sun Microsystems as JSR 127 under the Java Community Process (JCP).
JavaServer Faces (JSF) is a user interface framework for building web applications that run on the server side and render the user interface back to the client.
The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 252 (1387 words)
JavaServer Faces 1.2 will address the need of the Java community for closer synchronization between the JavaServer Faces and JavaServer Pages specifications, as well as addressing high-priority, low impact bugs filed since the previous release of the specification.
The JavaServer Faces Reference Implementation is free to implement and redistribute commercially in non modifiable binary form.
The Faces 1.1 specification will be used as a starting point for the work on Faces 1.2, which will be part of the greater J2EE 5.0 platform, which also includes the next version of Servlet.
  More results at FactBites »

 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your location
Your comments
Please enter the 5-letter protection code


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.