2010/01/11 - Apache Beehive has been retired.

For more information, please explore the Attic.

Apache > Beehive
 

Java Server Faces

Introduction

JavaServer Faces is technology for building web application user interfaces. It allows development of very rich component- and event-based pages. NetUI Page Flow treats treats JSF pages as first-class citizens. In addition to allowing the use of "straight" JSF features, it integrates in the following ways:

  • When a JSF page is hit, either directly or from a Page Flow action, an associated "backing bean" class is looked up. If it exists, an instance is created and managed by the framework. This bean can contain JSF component references, event handlers, etc., and it can raise Page Flow actions, with or without form beans attached. Its lifetime is tied to the lifetime of the JSF page.
  • Components in JSF pages can also raise Page Flow actions directly, with or without form beans attached, using the built-in action attribute.
  • Pages can databind to NetUI objects using JSF-style expressions like #{pageFlow.someProperty} or #{pageInput.somePageInput.someProperty}.
  • A page can databind to properties in its associated backing bean through a "backing" context, e.g., #{backing.someProperty}.
  • When returning to a JSF page through the navigateTo feature, the page's component tree and its backing bean are restored.

The NetUI / JSF Sample demonstrates these features.

Enabling Java Server Faces

To enable Java Server Faces in a Beehive web application, complete the following steps:

Integrate JSF Tags in Your Web App

Integrate JSF into your webapp. You can use either MyFaces v1.0.9 or later, or the JSF Reference Implementation v1.1_01.

Configure Your Web Application

Add the following snippet to your WEB-INF/faces-config.xml file:

<factory>
  <application-factory>
    org.apache.beehive.netui.pageflow.faces.PageFlowApplicationFactory
  </application-factory>
</factory>

This goes underneath the <application> element and before the <navigation-rule> element(s).