<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<title></title>
</head>
<body text="#000000" bgcolor="#ffffff">
<br>
I believe the intent was to provide a View meta-data API (VAST - View
Abstract State Tree) which abstracted this level of detail w/o tying it
to Facelets. That way frameworks such as Gracelets could write to that
API and work w/ any View technology (not just Facelets). Therefor,
making the Facelets-specific API's part of the implementation makes
sense.<br>
<br>
Not sure where things stand right now, though...<br>
<br>
Ken<br>
<br>
On 03/31/2010 09:34 AM, Leonardo Uribe wrote:
<blockquote
cite="mid:n2of6c92361003310934ge114c69cmf34d1d40bc28f193@mail.gmail.com"
type="cite">Hi<br>
<br>
This message is on behalf of Lewis Gass.<br>
<br>
I am writing in relation to a particular use case which reveals that
the <br>
current JSF 2.0 public API is defficient. This is in relation the open <br>
source project Gracelets (<a moz-do-not-send="true"
href="http://gracelets.sourceforge.net/">http://gracelets.sourceforge.net/</a>)
and the new <br>
effort to integrate JSF 2.0 with Groovy. In order for people to use
Groovy <br>
as an alternative View Langauge they need
<br>
to have access to the all the Facelets tag libraries and participate in
the <br>
Templating framework that Facelets provides. Much of this is tied to
the <br>
TagLibrary and
<br>
TemplateClient API's. Before, with JSF 1.2, there was a single Facelets
<br>
"API" and/or implementation. So integrating with it was much simpler,
as is <br>
shown by previous Gracelets
<br>
versions. With JSF 2.0, part of the Facelets library was divided into
public <br>
API and another as JSF 2.0 specific implementation.
<br>
<br>
However, basic concepts such as Templating (TemplateClient and <br>
TemplateManager) are not considered public API, which means that a <br>
technology such as Gracelets
<br>
must rely on a per JSF implementation integration library which is
volatile <br>
in nature. The FaceletContext class is public API, but implementations
are <br>
not required to support
<br>
third party implementations of such, and there is no standard way to
access <br>
the TagLibrary used by facelets so that third part View Languages can <br>
harness them.
<br>
<br>
Thus this message has the purpose of requesting such parts of the old <br>
Facelets library, namely, the TagLibrary, TemplateClient and the
related <br>
FaceletContext methods (popClient(),
<br>
pushClient(), extendClient() and applyDefinition()) to be part of the
public <br>
JSF 2.0 API, while at the same time requiring JSF 2.0 implementors to <br>
support third party implementations
<br>
of the same classes/API's.
<br>
<br>
Respectfully,
<br>
Lewis Gass
<br>
Gracelets Coder
<br>
<a moz-do-not-send="true" href="mailto:sestechllc@gmail.com">sestechllc@gmail.com</a>
<br>
</blockquote>
</body>
</html>