It's not a secret anymore!
The moose likes JSF and the fly likes Newbie in JSF Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » JSF
Bookmark "Newbie in JSF" Watch "Newbie in JSF" New topic

Newbie in JSF

rajesh yedula

Joined: Dec 22, 2011
Posts: 11

recently i have started to learn JSF, oftenly i have been listening words like facelets,myfaces,tomahawk,trinidad,tobago.

So far i know JSF Reference Implementation only.

I would like to know Is there any diff b/w JSF vs Facelets? if not why facelets word using mostly and at the same time myfaces,tomahalwk why these words evolved?

Please clarify with these new terminologies and whey they differ with JSF?
Tim Holloway
Saloon Keeper

Joined: Jun 25, 2001
Posts: 17417

JSF is an extensible framework. It comes with a set of core tags such as the tags in the "h" (html) and "f" (functional) namespaces. But those tags are pretty basic. They don't provide the sophisticated GUI that most of us love, so it's a common practice to augment them with extension tagsets, such as RichFaces or Tomahawk. These extension tagsets usually offer better AjAX support, compound controls such as ComboBoxes and Shuttle Controls and so forth.

Myfaces is a bit different. is the home of a number of different projects. There's the basic myfaces package, which isn't needed much anymore, since it's functionally equivalent to the Reference Implementation of JSF. Then there's things like Tomahawk that add scrollable table displays and Calendar controls. Trinidad is (if I'm not mistaken) an open-source implementation of Oracle's ADF tagset. Tomahawk is one of the oldest of the extension tagsets, and in some cases, the core JSF implementation now includes capabilities that requires an exension originally.

Facelets is a bit different. JSF in its pure form allows the output to appear in many formats, but Facelets was designed in part to optimize HTML output in particular. It's available as an add-on for JSF 1.x, but it's an integral part of JSF2. It's very useful, although, unfortunately it has also made it possible for people to try and code JSF views as though they were logic components instead of as form templates. That isn't a good thing to do, as it violates MVC rules. And more to the point, makes apps more difficult (and expensive) to maintain.

An IDE is no substitute for an Intelligent Developer.
I agree. Here's the link:
subject: Newbie in JSF
It's not a secret anymore!