Hi Jason,
I'm sorry I didn't respond sooner... I missed your email in my
overcrowded inbox.
See comments below.
Jason Lee wrote:
Any takers? Curiosity is eating
at me. :) I can get over that, though... :P
-----
Jason Lee, SCJP
Programmer/Analyst
Couple of questions:
1) Why jsftemplating? Not
second guessing, but, as a Facelets fan, I'm curious why jsftemplating
was chosen over Facelets. When we looked at it, the docs were pretty
sparse, so we moved on. I hear things have changed, so we're curious
what the advantages are.
The docs are sparse. This is its biggest problem. The code is solid
though.
Some of the core features in JSF Templating are a derivative of
previous UI frameworks (i.e. handlers & the descriptors). These
features are very robust and stable. JSFTemplating is almost a year
older than Facelets and development on JSF components was being done
using
JSFTemplating (before it was called JSFTemplating) before Facelets
existed on Java.net. We also have the advantage of having the creators
of
JSFTemplating on our team. We have nothing against Facelets and have
spoken with Jacob, looked at his project, and heard him speak.
Facelets is a good framework and I recommend anyone not using
JSFTemplating to use Facelets.
Here are some comparisons between the frameworks:
|
JSP
|
Facelets
|
JSFTemplating
|
JSF focused "template" |
No
|
xhtml; much better than JSP & much faster
|
XML or proprietary, extensible to additional
template formats (i.e. JavaScript as presented at last JavaONE); much
better than JSP & much faster
|
No-compile real-time updates
|
No
|
Yes
|
Yes
|
Ajax support
|
No
|
Yes
|
Yes
|
Support for Creating Components
|
No
|
No
|
Yes using same template format including
"decode" functionality
|
"Including" or sharing content between pages
|
Yes (limited)
|
Yes
|
Yes
|
Good error messages
|
No
|
Yes, including line #'s of template
|
Better than JSP, not as good as Facelets
|
"pageSession"
|
No
|
No
|
Yes
|
Extra events
|
No
|
No
|
Yes (this is a big feature for the GlassFish
team)
|
Handlers to modularize / parameterize code
|
No
|
No
|
Yes (this is another *big* feature for the
GlassFish team)
|
Component Factories
|
"binding" provides a very weak non,
parameterized version
|
No? (not sure on this one)
|
Yes. Very robust.
|
@annotations to make development easier
|
No
|
No
|
Yes
|
Component support for Woodstock
|
Yes
|
No (but easy to add from what I understand)
|
Yes
|
In house knowledge / support
|
Yes
|
No
|
Yes
|
Documentation
|
Yes
|
Yes
|
Needs improvement, has been improving, biggest
weakness
|
Tool support
|
Yes, many options
|
Yes (Excedel, ??)
|
Not yet
|
Ease of use
|
No
|
Yes?
|
Yes
|
Robust / Mature
|
?
|
Yes
|
Yes
|
The information in this table is to the best of my knowledge. If
anything is inaccurate, please let me know. It also may not highlight
some of the strong points of Facelets that we are not aware of (we are
also interested in hearing about those!).
All things considered, JSFTemplating is the best choice for our team.
As members of the GlassFish community, we are happy to share our
experience developing with JSFTemplating and help support anyone else
that wants to try it out. Members of our team have been contributing
to the JSFTemplating documentation and examples -- the biggest example
is the GlassFish admin GUI itself. As we wrap up the GF Admin Console,
our team should have more time to contribute.
2) What/where are the Woodstock
components?
You'll hear more about these soon. The "Project Woodstock" components
(I think that's how were supposed to refer to them -- not sure) have
been around in some shape or form for over 2 years. They are the 3rd
generation of JSF components that Sun has developed in-house. They
have been made public through Creator, Visual Web Pack, and maybe
NetBeans. They include a very full set of components that add a lot of
value. This component set is competitive with what ADF Faces
provides. Look for more information about these components soon! You
can get the most recent version of these components directly from
GlassFish. The newest "supported" version (I believe) is available
through Visual Web Pack (I haven't tried this out yet).
Thanks for your comments, Jason. We *greatly* appreciate the feedback
you've given in the past and are always open to any ideas or
suggestions you have. Please feel free to comment on any of these
points or offer us ideas of things you think we should be considering.
If you'd like to get more involved in the JSF or Ajax development in
GlassFish (I know these are areas of interest to you), let us know! ;)
Thanks again!
GlassFish Admin GUI Development Team
-----
Jason Lee, SCJP
Programmer/Analyst
This is a Heads up regarding changes in Admin Console for 9.1.
In order to keep up with the Web technology and provide AJAX in the
admin console, the GUI team has completely rewritten the code for the
console. The new console uses JSF and the latest Woodstock components.
On top of JSF, we
use Templating
for JavaServer™ Faces Technology
(or jsftemplating). Interface to the backend
has also been changed, and mostly uses AMX API.
We will switch to this new JSF version of Admin GUI this weekend, so
that Monday's (12/11) nightly build will be using this as the admin
console.
Another message will be sent out once the changes has complete.
thanks
Anissa.