← RichFaces Documentation Plan
Phase 2: Content Specifications
Migrating to RichFaces 4.0
References:
- http://www.jboss.org/community/wiki/A4jCoreComponentsRequirements
- http://docs.jboss.org/richfaces/latest_3_3_X/en/migrationguide/
Product Description
The Migration Guide describes how to take an existing RichFaces project and upgrade it to use RichFaces 4.0. It details changes in component usage and behaviours, and any other changes to the framework that may affect an existing RichFaces project.
Usability Goals
Developers who are familiar with previous versions of RichFaces need to easily discover what has changed and what they are required to do to get their projects working with the new RichFaces library. New-comers to RichFaces will have little or no use for this book.
Audience Profile
The audience will have used a previous version of RichFaces, so will most likely be familiar with basic concepts. They will primarily be concerned with how to switch their existing projects to using the new RichFaces framework.
Objectives
The book must accomplish the following:
- explain how to upgrade
- detail any changes so necessary adjustments can be made to accommodate the new version
- describe any potential issues with migrating
Content and Metrics
Chapter | Section | Graphics | Pages | Progress | Notes |
Introduction | - | 1 | |||
Upgrading | Before upgrading | - | 1 | ||
Installation | - | 2 | Refers to Developer Guide | ||
Changes and new features | Dependencies | - | 2 | Possibly have example application | |
JSF 2.0 Integration | - | 2 | |||
Standardized naming | - | 2 | |||
Performance | - | 2 | |||
New features | - | 2 | |||
New components | - | 2 | a4j:ajax | ||
Deprecated features | - | 2 | |||
Deprecated components | - | 2 | a4j:support, a4j:page | ||
Other changes | - | 2 |
Developer Guide
References:
- http://www.redhat.com/docs/en-US/JBoss_Enterprise_Application_Platform/5.0.0.BETA/html/RichFaces_Developer_Guide/index.html
- http://docs.jboss.org/richfaces/latest_3_3_X/en/devguide/html/
- http://livedemo.exadel.com/richfaces-demo/index.jsp
Product Description
The Developer Guide gives a complete reference for getting started and working with RichFaces. This includes details of the architecture and framework, use in different environments and applications, and skinning implementation.
Usability Goals
Using the Developer Guide, the reader must be able to confidently work with all the RichFaces components and features. They should be able to use the book to go from being a novice to using advanced elements of the framework, and they must have a comprehensive understanding of how RichFaces works and how it can be useful for their projects.
Audience Profile
Developers are the typical audience for the book. Novice RichFaces developers will make up the bulk of this, since most of the information the veteran developers require is in the migration guide, but the more advanced sections of the book will be relevant to all levels of experience.
Objectives
A developer must be able to go from installation through to publishing a project from scratch using the book.
Content and Metrics
Chapter | Section | Graphics | Pages | Progress | Notes |
Introduction | - | 1 | |||
Getting started with RichFaces | Technical requirements | - | 1 | ||
Installing RichFaces | - | 1 | |||
Configuration | - | 2 | includes settings for different environments | ||
Creating a project | - | 2 | |||
RichFaces overview | Architecture | 3 | 2 | ||
Technologies | - | 2 | Ajax, JSP, EL, compatibility matrix | ||
Differences between JSF and RichFaces mechanisms | 1 | ||||
Restrictions | - | 1 | |||
Using RichFaces with Maven | - | 1 | Including Maven dependency plug-in | ||
Using RichFaces in existing JSF projects | - | 2 | |||
Basic concepts | Sending an Ajax request | - | 2 | ||
Receiving events and updates | - | 2 | |||
Ajax attributes | - | 2 | |||
Ajax containers | - | 2 | |||
Component overview | - | 1 | refers to Component Guide | ||
Advanced features | Additions to JSF2 | - | 2 | ||
Performance optimization | - | 2 | bypassUpdates | ||
Traffic control and queues | - | 2 | |||
Validation | - | 3 | |||
Filters | - | 2 | |||
Scripts and styles | - | 2 | |||
Error handling | - | 2 | |||
Managing states | - | 2 | |||
User roles | - | 2 | |||
Skinning and theming | What are skins and themes? | - | 1 | ||
Using skins | - | 2 | includes standard control skinning | ||
Customizing skins | - | 2 | includes plug-n-skin | ||
Changing skins at runtime | - | 1 | |||
Extended skinnability | - | 2 | includes client-side script and XCSS | ||
Appendix A | Resources | - | 1 |
Component Guide
References:
- http://docs.jboss.org/richfaces/latest_3_3_X/en/apidoc/
- http://docs.jboss.org/richfaces/latest_3_3_X/en/apidoc_framework/
- https://svn.devel.redhat.com/repos/ecs/Red_Hat_Enterprise_Linux/5.3/Tapset_Reference_Guide/ (for layout)
Product Description
The Component Guide lists each component and object in the RichFaces library, including details on methods, properties, and relationships to other objects and classes.
Usability Goals
The Component Guide needs to be an easier to read than the API Reference, and provides more of an practical explanation for each component in the framework. It will describe when it is best to use each component and how best to use them, as well as example code and screenshots to illustrate their use. It can also potentially be used as a 'catalogue' of components for designing user experiences.
Audience Profile
The audience for this book is similar to that for the Developer Guide: mostly novice developers learning their way through the framework. Experienced developers may also use it to become more familiar with the components. User experience designers looking for the most appropriate components will also find the book helpful.
Objectives
The Component Guide needs to provide a thorough description on the use of each component in the framework, providing a more reader-oriented reference than the API Reference pages.
Content and Metrics
Chapter | Section | Graphics | Pages | Progress | Notes |
Introduction | 1 | ||||
Common Ajax attributes | Rendering | 1 | |||
Queuing and traffic control | 1 | ||||
Data processing | 1 | ||||
Action and navigation | 1 | ||||
Events and JavaScript interactions | 1 | ||||
Common features | 3 | ||||
a4j actions | |||||
Actions | a4j:actionparam | 1 | 1 | ||
a4j:ajax (a4j:support) | 1 | 1 | |||
a4j:ajaxListener | 1 | 1 | |||
a4j:commandButton | 1 | 1 | |||
a4j:commandLink | 1 | 1 | |||
a4j:htmlCommandLink | 1 | 1 | |||
a4j:jsFunction | 1 | 1 | |||
a4j:poll | 1 | 1 | |||
a4j:push | 1 | 1 | |||
Resources | a4j:loadBundle | 1 | 1 | ||
a4j:loadStyle | 1 | 1 | |||
a4j:loadScript | 1 | 1 | |||
a4j:keepAlive | 1 | 1 | |||
a4j:mediaOutput | 1 | 1 | |||
Containers | a4j:form | 1 | 1 | ||
a4j:include | 1 | 1 | |||
a4j:outputpanel | 1 | 1 | |||
a4j:region | 1 | 1 | |||
Validation | rich:ajaxValidator | 1 | 1 | ||
rich:graphValidator | 1 | 1 | |||
rich:beanValidator | 1 | 1 | |||
Processing management | a4j:queue | 1 | 1 | ||
a4j:log | 1 | 1 | |||
a4j:status | 1 | 1 | |||
a4j:portlet | 1 | 1 | |||
rich tag library | |||||
Rich inputs | rich:calendar | 1 | 1 | ||
rich:colorPicker | 1 | 1 | |||
rich:comboBox | 1 | 1 | |||
rich:editor | 1 | 1 | |||
rich:fileUpload | 1 | 1 | |||
rich:inplaceInput | 1 | 1 | |||
rich:inplaceSelect | 1 | 1 | |||
rich:inputNumberSlider | 1 | 1 | |||
rich:inputNumberSpinner | 1 | 1 | |||
rich:suggestionBox | 1 | 1 | |||
Panels and containers | rich:modalPanel | 1 | 1 | ||
rich:panel | 1 | 1 | |||
rich:panelBar | 1 | 1 | |||
rich:panelBarItem | 1 | 1 | |||
rich:simpleTogglePanel | 1 | 1 | |||
rich:tabPanel | 1 | 1 | |||
rich:tab | 1 | 1 | |||
rich:togglePanel | 1 | 1 | |||
rich:toggleControl | 1 | 1 | |||
Tables, grids, and lists | rich:column | 1 | 1 | ||
rich:columnGroup | 1 | 1 | |||
rich:columns | 1 | 1 | |||
rich:dataDefinitionList | 1 | 1 | |||
rich:dataFilterSlider | 1 | 1 | |||
rich:dataGrid | 1 | 1 | |||
rich:dataList | 1 | 1 | |||
rich:dataOrderingList | 1 | 1 | |||
rich:dataScroller | 1 | 1 | |||
rich:dataTable | 1 | 1 | |||
rich:extendedDataTable | 1 | 1 | |||
rich:repeat | 1 | 1 | |||
rich:subTable | 1 | 1 | |||
table filtering | 1 | 1 | |||
table sorting | 1 | 1 | |||
Selection and ordering | rich:listShuttle | 1 | 1 | ||
rich:orderingList | 1 | 1 | |||
rich:pickList | 1 | 1 | |||
Trees | rich:changeExpandListener | 1 | 1 | ||
rich:nodeSelectListener | 1 | 1 | |||
rich:recursiveTreeNodesAdapter | 1 | 1 | |||
rich:tree | 1 | 1 | |||
rich:treeNode | 1 | 1 | |||
rich:treeNodesAdapter | 1 | 1 | |||
Menus and toolbars | rich:contextMenu | 1 | 1 | ||
rich:dropDownMenu | 1 | 1 | |||
rich:menuGroup | 1 | 1 | |||
rich:menuItem | 1 | 1 | |||
rich:menuSeparator | 1 | 1 | |||
rich:panelMenu | 1 | 1 | |||
rich:panelMenuGroup | - | 1 | |||
rich:panelMenuItem | - | 1 | |||
rich:toolBar | 1 | 1 | |||
rich:toolBarGroup | 1 | 1 | |||
Output and messages | rich:message | 1 | 1 | ||
rich:messages | - | 1 | |||
rich:paint2D | 1 | 1 | |||
rich:progressBar | 1 | 1 | |||
rich:toolTip | 1 | 1 | |||
Drag and drop | rich:dragIndicator | 1 | 1 | ||
rich:dragSupport | 1 | 1 | |||
rich:dropSupport | 1 | 1 | |||
rich:dragListener | - | 1 | |||
rich:dropListener | - | 1 | |||
rich:dndParam | - | 1 | |||
Layout and appearance | rich:effect | 1 | 1 | ||
rich:jQuery | 1 | 1 | |||
rich:separator | 1 | 1 | |||
rich:spacer | 1 | 1 | |||
rich:page | - | 1 | |||
rich:layout | 1 | 1 | |||
rich:layoutPanel | - | 1 | |||
Functions | rich:clientID | 1 | 1 | ||
rich:component | 1 | 1 | |||
rich:element | 1 | 1 | |||
rich:findComponent | 1 | 1 | |||
rich:isUserInRole | 1 | 1 | |||
Functionality expansion | rich:componentControl | 1 | 1 | ||
rich:gmap | 1 | 1 | |||
rich:hotKey | - | 1 | |||
rich:virtualEarth | 1 | 1 | |||
Totals | 99 | 108 |
Component Development Kit Guide
References:
Product Description
The Component Development Kit Guide details how to use the Component Development Kit to create custom components for use with the RichFaces library.
Usability Goals
Readers must be able to use the Component Development Kit Guide to create custom components suited to their purposes. Examples and illustrations will be needed to guide the reader through the process.
Audience Profile
The audience is those developers who wish to expand on the library of existing RichFaces components by creating custom components and features.
Objectives
The reader must be able to build a customized component from scratch and include it in their RichFaces projects.
Content and Metrics
Chapter | Section | Graphics | Pages | Progress | Notes |
Introduction | - | 1 | |||
Configuration | - | 1 | |||
Creating a new component | Creating a project | - | 1 | ||
Building a component skeleton | - | 1 | |||
Creating the UI | 2 | 2 | |||
Registering resources | - | 1 | |||
Extending the UIInput class | - | 1 | |||
Configuring the component | - | 1 | |||
Tags and descriptors | - | 1 | |||
Using components in projects | - | 1 | |||
Developer sample | - | 1 | |||
Unit testing | - | 1 | |||
Creating components in other IDEs | 4 | 1 | |||
Appendix A | Naming conventions | - | 1 | ||
Appendix B | Template tags reference | - | 1 |
Revised Project Plan
Revisions have been made to the original RichFaces 4.0 Docs Information Plan.
Comments