views:

556

answers:

4

I'd like to learn how to develop Java-based web front-ends (I already work with J2EE server-side). Microsoft's path appears quite straight-forward (ASP.NET; like it or not).

However, I'm not sure about Java's. JSF1.2/JSP or Facelets, and to get something like a date picker learn IceFaces/Dojo?

Any thoughts on a learning path would be much appreciated :-)

+2  A: 

Here's a nice resource on JSF best practices.

Bozho
A: 

There are various options for you.

  • Google webtoolkit, a nice RIA UI framework which generates performing javascript code.
  • Spring, a very widely used framework which offers several components for both UI and backend code.
  • Struts, probably the most popular choice right now, although it adds lots of development overhead.
  • JSF, this framework is probably closed to the way how asp.net was designed.
Tomh
+4  A: 

Facelets itself has an excellent getting started document:

Then there several JSF-related documents you need to know and understand:

As to the JSF implementations and component libraries, there are two (major) JSF reference implementations: Sun Mojarra and Apache MyFaces. When you want to use JSF you need at least one of them (not both or more). At the moment I can recommend Mojarra above MyFaces.

Then you have many JSF component libraries which you can add on top of any JSF reference implementation. The component libraries usually adds just that extra flexibility (e.g. Mojarra Scales and Apache Tomahawk) and/or ajaxability -often also in combination with skinnability- (e.g. Apache Trinidad, JBoss RichFaces and IceFaces). You can in theory use as many component libraries as you want in a project, but mixing skinned/ajaxified libraries is generally not a good idea because of potential collisions in lifecycle, viewhandling, javascripts, etcetera.

Good luck.

BalusC
Thanks Balus. I'd never heared of Sun Majarra. I'll give it a try. I'm using Glassfish v2.1 at them moment, so I hope it'll work with that.CheersSte
SteJav
Mojarra is until two years ago also known as "JSF RI". Mojarra is by the way already included in Glassfish.
BalusC
Any particular reason you recommend Mojarra over Myfaces?
Thorbjørn Ravn Andersen
@Thor: Personal experience based on robustness of the library. For JSF 1.0/1.1 I'd say: MyFaces. For JSF 1.2, I'd say Mojarra. For JSF 2.0 I haven't played with MyFaces 2.0 (yet?) so that would be subjectively Mojarra.
BalusC
A: 

Here is is link to javapassion.com faclets lesson. You can find there links to other facelets resources and many other topic. I strongly recommend JavaPassion site as a good place to start learn about java related technologies.

cetnar