jsf
JSF Tools Project Features for WTP Release 1.5
WTP LogoWTP Home
JSF Tools Project Features for WTP Release 1.5 - JSF Tools 0.5 release
 

Updated: 06/16/2006
 

This document defines the set of features that will be delivered in the WTP1.5-JSF Tools 0.5 release. This is an update on the draft document to reflect the current status.

 

The features delivered in this release are aimed at improving the development experience of a user in building and deploying a JavaServer Faces application.

Features
 

 

I. JSF-JSP Page Source Editor Features.

 

1. Content Assist for values of tag attributes for the JSF standard Core and HTML tag libraries
The JSF-JSP editor provides content completion for specific attribute values of the JSF standard Core and HTML tags. Content Assist is available for both Expression Language (EL) and non-EL values.Support includes providing a proposal for values of attributes that have discrete set of values, references to application configuration type including managed bean and resource bundle.

 

2. JSF Page validation
The Editor now supports semantic validation for both EL and non-EL values of attributes of the JSF standard Core and HTML tags. EL validation includes basic syntax checks, exisitence of managed beans, resource bundle and their properties, correct type and method signatures.

 

3. Extensible Framework
This release includes a collection of core frameworks that will enable JSF component developers, tool providers to enhance and extend the above mentioned features. These include:

  • Content Model Annotation Framework
      Define additional meta-data for elements and attributes on any xml-based content model for use at design time.
  • Design-time Meta-data Processing Framework
    • Uses the annotations framework to provide services to the JSF-JSP Source Editor
    • Define new services and enhance existing services
  • Design-time Application Manager
    • Provide an approximation of certain JSF runtime state information at design time.
    • Pluggable design-time variable, property and method resolvers
  • JSF Application Configuration Manager
    • Provide a unified application configuration model through API, effectively merging all faces configuration models into a single model
    • Notification services to monitor changes to the EMF objects in the model
    • Cross model validation will be supportable .

 

II. Application Configuration Editor Features.


The JSF configuration editor is a multi-page editor. It provides both a graphical view and a text view of the faces-config.xml file. An EMF model of the application configuration resolrce file has been provided. The editor has the following main features:
  • A summary page – a form based editor, summaries all elements configured in the faces-config.xml file.
  • A graphical representation of navigation rules – a graphical view shows how the pages and actions are linked together in the navigation rule element. The editor support drag-n-drop of exisiting pages. It also has a tool palette.
  • Managedbean page – a form based editor, has a tree view display of all managedbeans configured in the project. It provides wizard dialogs to guide user to create and configure new managedbeans.
  • Component page – a form based editor, displays commonly used elements in the project. Elements are grouped in a section and have a list view of all elements in each group. It also provides dialogs to create or modify those elements.
  • Others page – a form based editor, display all other advanced elements in the project. Those elements are grouped in a section and have a list view of all elements in each group. It also provides dialogs to create or modify those elements.
  • Text editor page – a source page editor, provides content assist and syntax highlighting when user edits the faces-config file.

 

III. Management Features.


1. Register JSF Libraries.
This allows a user to define a named collection of JARs and optionally tag a collection as a JSF implementation. A user can thus define and manage distinct groups of JSF implementations, components and utility Java libraries.The user experience will be similar to that of registering the JRE. For each named collection defined, a user can specify:
  • Name
  • JSF Version supported
  • Collections of JARs/ZIPs of Java Libraries
  • Implementation Flag
  • Default Implementation Library

 

2. Create a Dynamic Web Project with the JSF Project Facet.

 

3. Add the JSF Project Facet to an existing Dynamic Web Project.

 

In both the scenarios, a user has the following options to choose:

  • Select JSF implementation from registry. Users have the option to deploy the JARs in the library to the "WEB-INF\lib" folder. Users can also register new implementation libraries during facet installation.
  • Select the JSF Version
  • Create single application configuration resource file
    • Filename defaults to "faces-config.xml", and Location defaults to ".../WEB-INF". Both can be modified.
    • Update context-param in web.xml if selected location/filename is not "WEB-INF/faces-config.xml"
  • Update the web.xml with JavaServer Faces servlet and servlet-mapping information

 

4. Run/ Debug a JSF JSP Page on the Server.

Only JSF pages with the .jsp file extension are currently supported.