blob: f6ac613cd1f2240ec91fa65c8836780d78cf5796 [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-us" xml:lang="en-us">
<head>
<title>JSF Facelets Tools Proposal</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
</head>
<body>
<h2>JSF Facelets Tools Proposal</h2>
<i>1st Draft</i>
<br />
<i>10th Jan. 2008</i>
<p>JavaServer Faces(JSF) Facelets Tools is a proposed open source
component under the Eclipse WTP JSF Tools subproject.</p>
<p>This component proposal is similar to a Project Proposal (as
defined in the Eclipse Development Process document) and is written to
declare its intent and scope. This proposal is written to solicit
additional participation and input from the Eclipse community.</p>
<p>Comments can be made in bug <a
href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=214949">214949</a>.</p>
<h4>Background</h4>
<p>The JSF Tools project provides an extensible framework and
exemplary tools to simplify the development of JSF applications in
Eclipse. The JSP source editor can be used for this purpose. However,
this feature works only for JSF pages that use JSP as the view handler.
Content Assist and Validation are other significant features in the JSF
Tools project available only for a JSF-JSP page. <a
href="https://facelets.dev.java.net/">Facelets</a> is a more performing
and popular view handler that uses XHTML syntax to define a JSF page.
The released version of the JSF tools project doesn't support Facelets.</p>
<h4>Project Goal</h4>
<p>The objective of this incubating project is to enable the current
set of features in the JSF Tools project to support Facelets. Since
Facelets is not part of the current JSF specification, this work is
being done as an incubating project. The next release of the JSF
Specification, JSF 2.0 (JSR-314), will have a support for a Facelet-like view
handler. The work done in this project will make it possible to provide
feedback to the JSF 2.0 specification expert group and hence
its essential to start early.</p>
<h4>Scope</h4>
<p>The JSF Facelets Tools project will enable the current features
of the JSF Tools Project in a dynamic web project for Facelets.</p>
<h4>Proposal</h4>
<p>Following are the list of features that will be supported for
Facelets
<ol>
<li>Create a Dynamic Web Project configured for Facelets</li>
<ul>
<li>Provide a WTP-Facet called, JSF Facelet, that can be added to
a Dynamic Web Project that has a JSF Facet.</li>
<li>Configure the application configuration resource file, <i>faces-config.xml</i>,
to set <code>com.sun.facelets.FaceletViewHandler</code> as the view
handler</li>
<li>Configure the <i>web.xml</i> file to define <code>*.xhtml</code>
as the view definition document file by setting the initialization
parameter, <code>javax.faces.DEFAULT_SUFFIX</code> to <code>*.xhtml</code>
</li>
<li>Add Facelets Tag libraries to the project</li>
</ul>
<li>Register a Facelets Tag Library</li>
<li>Create a Facelets template page</li>
<li>Create a <code>XHTML</code> web page enabled to define a
Facelet page</li>
<ul>
<li>Add the Facelets namespace to the page</li>
<li>Support creation of the page based on a Facelets template</li>
</ul>
<li>Edit a Facelets Web Page in the Structured Source Editor</li>
<ul>
<li>Recognize all the Facelets tag libraries in the project
defined by</li>
<ul>
<li>A taglib.xml file in the project search path (as defined by
Facelets).</li>
<li>Defined in the <i>web.xml</i> file using the initialization
parameter <code>facelets.LIBRARIES</code></li>
</ul>
<li>Provide Content Assist for all the registered tags and their
attributes</li>
<li>Provide validation for all the registered tags and their
attributes</li>
<li>Provide Content Assist, Validation, Hyperlink and HoverHelp
support for Expression Language in XHTML files.</li>
</ul>
<li>Execute a Facelets Page on a target runtime web server</li>
</ol>
</p>
<h4>Contributions</h4>
<p></p>
<h4>Tentative Plan</h4>
<p>First stable release will be available by July, 2008</p>
<h4>Component Lead/Committer</h4>
<ol>
<li>Raghu Srinivasan</li>
</ol>
<h4>Committers</h4>
<ol>
<li>Cameron Bateman</li>
<li>Gerry Kessler</li>
<li>Ian Trimble</li>
</ol>
</ul>
<h4>User community</h4>
The User community includes the current set of users of the JSF Tools
project and has the potential to attract new users from the JSF Facelets
community.
<h4>Related Bugs</h4>
<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=192393">End-user
Feature Request: 192393</a>
</body>
</html>