Differences between revisions 162 and 163
Revision 162 as of 2006-07-19 10:26:14
Size: 12516
Editor: www-gw3
Revision 163 as of 2006-07-22 11:21:35
Size: 12593
Editor: c-24-91-251-40
Deletions are marked like this. Additions are marked like this.
Line 65: Line 65:
 * ["ManagingCheckboxes"] - Tips for working with checkboxes in datatables.

Apache MyFaces

JavaServer(tm) Faces (JSF) is an established web application framework standard (JSR127) that accomplishes the MVC paradigm.

JSF is comparable to the well-known [http://jakarta.apache.org/struts/ Struts framework] but has features and concepts that are beyond those of Struts. It is similar to the [http://jakarta.apache.org/tapestry Tapestry framework] as it is also a component-based framework.

Look at [http://java.sun.com/j2ee/javaserverfaces/ Sun's JavaServer(tm) Page] to learn more about the [http://www.jcp.org/en/jsr/detail?id=127 Java Specification Request 127] and to download the specification. They also provide a useful Tutorial there.

MyFaces Core is a 100% compliant implementation of this standard - it is compliant to the standard yet offers additional value by providing separate extended component sets and many special features which make JSF development easier.

MyFaces has several subprojects, where MyFaces API and MyFaces Impl together comprise the core implementation.

Tomahawk, Tobago (["Tobago"]) and Trinidad (the formal ["ADF Faces"]) are sets of extended components - using these components offers you more functionality and flexibility than using only the standard components of the core implementation.

Attention: currently the Tobago component set is not interchangeably usable with the Tomahawk and Trinidad component set. This is due to the fact that Tobago uses special layouting code, which makes HTML layouting superfluous.

Find all information about the MyFaces subprojects on: http://myfaces.apache.org. See the MyFaces Tomahawk and Sandbox examples in action: http://www.irian.at/myfaces.jsf. If your company likes using MyFaces, add your company here: ["Companies Using MyFaces"].

Using MyFaces

  • ["Getting Started"] - Quick guide about MyFaces

  • ["TracingMyFacesUsingAspectJ"] - How to trace MyFaces using AspectJ

  • ["Installation and Configuration"] - Installation instructions for different servlet containers
  • ["Using MyFaces in a Project built with Maven"] - General instruction on adding MyFaces in a Maven POM.

  • ["Building With Maven"] - Maven build instructions
  • ["MyFaces Archetypes for Maven"] - Setup a new JSF project in a minute, following the standards and including the exact dependencies!

  • ["Library dependencies"] - Library dependencies and their versions
  • ["How to add MyFaces support to a Sun JSF RI application"] - Add MyFaces support to a JSF RI application

JSF and MyFaces in Theory: The Concepts

  • ["How JSF State Management Works"] - Serialization, StateHolder, backing beans, component tree, t:saveState explained.

  • ["How The Immediate Attribute Works"] - immediate, validation, model update explained.
  • ["How Component Child Rendering Works"] - getRendersChildren, encodeChildren explained.
  • ["StudyGuide"] - Tips/guide to getting familiar with the MyFaces implementation

  • ["IDAssignment"] - Assignment of IDs to HTML elements.

JSF and MyFaces in Praxis: The HowTo's

Working with tables

  • ["Working with DataTable and ActionListeners"] - If you you have a command link or button in dataTable row, there is an easy way to get to row bean from an ActionListener.

  • ["ExecutingMethodsFromLinkButtonParameters"] - From List to Detail : access a detail record from a master list, or more generally, execute a managed bean method based on parameters provided for a link or button.

  • ["Working With DataTable And PreserveDataModel"] - Use the data table and preserve data model correctly.

  • ["WorkingWithLargeTables"] - Use dataTable/dataScroller without having the entire dataset in memory

  • ["Working with auto sortable tables"] - Enable automatic sort on your data table
  • ["Exporting DataTable To MS-Excel"] - Out put a data table to excel

Working with TabbedPanes

Working with Radio Buttons

  • ["Display Radio Buttons In Columns"] - Example of Displaying Radio Buttons in Columns.

Working with JavaScript and JSF

Conversion and Validation

  • ["NullCapableConverter"] - Make a converter to handle disabled or null-capable SelectItems.

  • ["Create and Display Messages"] - Create Messages to be used by view with h:message h:messages.
  • ["OptionalValidationFramework"] - allows you to change the behavior of validators in a form

Managing Errors/Infos/Warnings

  • ["Displaying Errors/Infos/Warnings in JSF Pages"] - A method for communicating messages to the user.
  • ["Handling Server Errors"] - methods for handling server errors.

  • ["Navigation Overview"] - Overview of the Navigation Tags
  • ["Custom Navigation Handler"] - Enhance the MyFaces Navigation Handler to support parameter passing, dynamic navigation and redirection.

  • ["InvokingJsfPagesWithStandardUrls"] - Creating standard HTML links (with parameters) that display JSF pages (using JSF in a RESTful environment)


Configuration of special features

  • ["Performance"] - Making JSF perform
  • ["Secure Your Application"] - Encrypt the view state.
  • ["LoggingSettings"] - Useful classes to log on for troubleshooting.

  • ["A Little Quality Assurance"] - How to validate your managed beans and navigation rules.
  • ["Management of Webapp Resources With Weblets"] - How to use resources packaged in a jar in MyFaces apps using Facelets.

Properly use those extended components

  • ["Setup For File Uploads"] - A quick and dirty checklist for setting up your MyFaces application for file uploads.

  • ["Dynamic Menus with JSCookMenu"] - Create dynamic menus using the jsCookMenu component.
  • ["WYSIWYG Editor"] - Integrate TinyMCE or DOJO WYSIWYG Editor into !Myfaces Application

JSF and MyFaces in Praxis: Specialized Trails

Creating Custom Components

  • ["ComponentPack"] - Create your own component pack

  • ["Creating Composite Components"] - Create a composite or compound component out of existing components
  • ["External Resources"] - Integrate javascript, css, images and more using myfaces AddResource component


  • ["Using Portlets"] - Using MyFaces within Portlets

Migration from previous versions

  • ["From 1.0.9m9 to 1.1.0"]
  • ["From 1.1.0 to 1.1.1"]
  • ["From 1.1.x to nightly"]
  • ["Upgrading to Tomahawk 1.1.3"]
  • ["More tips on Upgrading to Tomahawk 1.1.3"]


  • ["Sending_Files"] - Howto manage sending files like PDFs.

JSF and MyFaces: The Reference

  • ["JsfComponents"] - List of JSF components and how to use them

  • ["MyFacesComponents"] - List of custom MyFaces Tomahawk components and extensions, and how to use them.

  • ["FAQ"] - Frequently asked questions about MyFaces or JSF, including a section on Facelets/Tomahawk/!MyFaces/Trinidad/JSF Troubleshooting

  • ["Hibernate And MyFaces"] - Bind Hibernate to JSF/!MyFaces

  • ["Tiles and JSF"] - Use Tiles with MyFaces

  • ["JSF-Spring and JSF"] - Use the Spring Framework with MyFaces via the jsf-spring integration library.

  • ["Use Facelets with Tomahawk"] - To use custom myfaces components with facelets, you must also create a tomahawk.taglib.xml facelets configuration file.
  • ["SEAM Integration"] - Integrate Jboss Seam into your application.
  • ["Integrating Ajaxanywhere"] - See how easy is to "ajaxize" your application.
  • ["Myfaces Eclipse Setup"] - Configure eclipse to launch MyFaces applications using tomcat/jetty.

  • ["JSF and Acegi"] - Using Java Server Faces with Acegi Security

Sibling projects

  • ["FacesFreeway"] - An effort to minimize the work for simple input forms

  • ["jsf-comp"] Sourceforge project - Shared community code sandbox.

MyFaces Development and Project Management

MyFaces Development

  • ["MyFaces Developer Notes"] - MyFaces developers guidelines

  • ["Contributing Patches"] - How to attach code changes and other files to the MyFaces issue tracker

  • ["EditXdocs"] - Editing Myfaces xdocs files in the MLMind XML editor

  • ["JSR-252"] - Info you will need if you are working on the MyFaces JSF 1.2 project

  • ["Obsolete/older MyFaces Development pages"] - Building older versions of MyFaces

  • ["Building MyFaces in your IDE"] - Building, Debugging and Deploying MyFaces in your IDE

  • ["Shared - impl or tomahawk"] - Which shared_XXX namespace should I use?

MyFaces Project Management

  • ["promotion"] - Requirements for promotion of a sandbox component
  • ["Release Plans"] - Plans and notes on individual releases
  • ["Release Procedure"] - Specific instructions for SVN and Maven tasks related to releases
  • ["Deploying the Webpage of MyFaces"] - Documentation on deploying the MyFaces webpage

  • ["MyFaces Artifacts"] - List of Build Artifacts and their Contents

  • ["New_Committers"] - Additional info for new committers
  • ["MyFaces Commons Refactoring"] - Checklist for Upcoming Refactoring of MyFaces commons classes

MyFaces Project Infrastructure

  • ["Apache Server"] - Project Infrastructure, Setup of Apache2 on Solaris Zone

Community and Context

Talk, talk, talk

  • Channel #myfaces on irc.freenode.net - chat discussion of myfaces issues.
  • Channel ##jsf on irc.freenode.net - chat discussion of jsf issues. Log can be found on [http://uwyn.com/drone/log/bevinbot/%23jsf]

With a little help of our friends

  • ["How to Help"] - Hints how you can get involved, help to support and contribute to Apache MyFaces

  • ["Help Wanted"] - Want to contribute? Volunteers needed for this list of tasks.
  • ["Acknowledgements"] - The most important page of this WIKI: saying "Thanks" to people who helped making MyFaces a success!

Random Musings

  • ["Spotlight"] - Articles about MyFaces

  • ["What Tools Do You Use to Develop Web Applications Using JSF"] - Experiences from fellow developers


  • ["Powered by MyFaces"] - Projects developed using MyFaces components

  • ["Companies Using MyFaces"] - List of companies and institutions using MyFaces in their day to day work

  • ["3rd Party Contributions"] - 3rd party tools and APIs that work with MyFaces

On the web

  • ["UsefulLinks"] - Tutorials for JavaServer Faces, MyFaces project activity and other useful links

FrontPage (last edited 2013-07-26 12:49:05 by 14)