| <html><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><link type="text/css" href="../../../default_style.css" rel="stylesheet"><link type="text/css" href="../../../webtools/wtp.css" rel="stylesheet"><title>JSF Tools Project Features for Milestone 1</title></head><body><table border="0" cellpadding="2" cellspacing="5" width="100%"><col width="16"><col width="*"><tbody><tr><td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">Introduction</font></b></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| This document defines the set of features that will be | |
| delivered in the Milestone 1 of the project. This document | |
| is a draft meant to solicit community feedback. | |
| <b> | |
| Please post your feedback to the mailing list, | |
| wtp-jsf-dev@eclipse.org | |
| </b> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| Following are the main themes for this milestone release: | |
| <li>Define the JSF Facet</li> | |
| <li> | |
| Provide a first-class editor for the Application | |
| Configuration resource file | |
| </li> | |
| <li> | |
| Define the complete JSF Application model including all | |
| the JSF specific artifacts. | |
| </li> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| The functionality delivered in this milestone will allow a | |
| user to build a simple JSF application and execute it on the | |
| target server. The following section gives an end user | |
| perspective of the features by enumerating all the use cases | |
| we plan to handle in this release. Given one of the main | |
| goal of this project is to provide an extensible framework, | |
| the section will also list use cases for the extensibility | |
| that will be provided as part of this milestone. | |
| </p></td></tr><tr><td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">Use Cases</font></b></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 1.Register the JSF Implementation. The user experience will | |
| be similar to that of registering the JRE. For each | |
| implementation registered, a user can specify: | |
| <ul> | |
| <li>Name</li> | |
| <li>JSF Version supported</li> | |
| <li>Libraries</li> | |
| <li>Tag libraries</li> | |
| <li>Default servlet name</li> | |
| <li>Default servlet class</li> | |
| </ul> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| A JSF implementation can be selected during project creation | |
| or when adding JSF facets to an existing web project | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 2. Create a Dynamic Web Project with the JSF Project Facet. | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 3. Add the JSF Project Facet to an existing Dynamic Web | |
| Project. | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| In both the scenarios, a user has the following options to | |
| choose: | |
| <ul> | |
| <li>Select JSF implementation from registry</li> | |
| <li>Select the JSF Version</li> | |
| <li> | |
| Create single application configuration resource | |
| file | |
| </li> | |
| <ul> | |
| <li> | |
| Filename defaults to preference, overridable | |
| Location defaults to ".../WEB-INF", allows | |
| overridable | |
| </li> | |
| <li> | |
| Updates context-param in web.xml if selected | |
| location/filename is not | |
| "WEB-INF/faces-config.xml" | |
| </li> | |
| </ul> | |
| <li> | |
| Update the web.xml with servlet and servlet-mapping | |
| information | |
| </li> | |
| <ul> | |
| <li> | |
| Servlet name/classname default to preferences, | |
| overridable | |
| </li> | |
| <li> | |
| Servlet-mapping defaults to preference, | |
| overridable | |
| </li> | |
| </ul> | |
| </ul> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 4.Create a JSF JSP Page.This will be similar to the New JSP | |
| Wizard. The user can specify the following. | |
| <ul> | |
| <li>Name</li> | |
| <li>Location</li> | |
| <li>JSF template (optional)</li> | |
| </ul> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 5.Create Application Configuration Resource file.User can | |
| specify the following. | |
| <ul> | |
| <li> | |
| File Name, defaults to the name specified in the | |
| preference | |
| </li> | |
| <li> | |
| Location, defaults to the path specified in the | |
| preference | |
| </li> | |
| </ul> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 6.Edit the Application Configuration Resource file. For this | |
| milestone, the Editor will be a basic SSE based XML Source | |
| Editor with the following features. | |
| <ul> | |
| <li>JSF-specific content assist</li> | |
| <li> | |
| "Hot linking" (ctrl-click) for classes to their | |
| corresponding java file. If the class doesn't exist, | |
| the editor will provide option to launch wizard to | |
| create it | |
| </li> | |
| </ul> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 7. Run/ Debug a JSF JSP Page (and Application Configuration | |
| file) on the Server. | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 8. User will be able to specify the following preferences. | |
| <ul> | |
| <li>a) Default JSF implementation</li> | |
| <li>b) Default JSF Version</li> | |
| <li> | |
| c) Default FileName of the Application Configuration | |
| Resource file. | |
| </li> | |
| <li> | |
| d) Default location of the Application Configuration | |
| Resource file. | |
| </li> | |
| <li>e) Default JSF Template</li> | |
| </ul> | |
| </p></td></tr><tr><td align="right" valign="top"> | |
| | |
| </td><td valign="top"><p> | |
| 9). Extensions | |
| <ul> | |
| <li>a) API to register a JSF implementation</li> | |
| <li> | |
| b) API to add the JSF Project Facet to a Dynamic Web | |
| Project | |
| </li> | |
| <li> | |
| c) API to create an Application Configuration | |
| Resource file. | |
| </li> | |
| <li> | |
| d) API to add instances of various artifacts of the | |
| Application Configuration Resource file such as the | |
| Managed bean, Navigation Rule, Validator etc. | |
| </li> | |
| <li> | |
| e) Extension points for the Application | |
| Configuration Editor | |
| </li> | |
| </ul> | |
| </p></td></tr></tbody></table></body></html> |