Pat Dezenzio

Greenhorn
+ Follow
since Mar 12, 2010
Merit badge: grant badges
For More
Cows and Likes
Cows
Total received
0
In last 30 days
0
Total given
0
Likes
Total received
0
Received in last 30 days
0
Total given
0
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Pat Dezenzio

I might be late on this topic but where I work we have an issue - JSF or Wicket. Our application is 1.5 million lines of code and is loosely based on Struts and EJB 2.0 on top of OC4J 10. Last year we were asked to prototype on eof our common pages in both frameworks and give a summary of what we liked, disliked, and preferred. The architects like Wicket and the developers like JSF. I prefer JSF. I used JSF at another company using RichFaces and it blew Struts out of the water. Yes, the faces-config can get cumbersome, but we also have complex navigation that Struts couldn't handle unless you rewrote the handler.

With this new application, Wicket had its good points - easy to configure and 100% pure Java. The problem is you better be a pretty good web page designer. If you have those skills then Wicket might be your best bet. Most Java developers are not. We are application developers and we leave the page layout and markup to the web designers. The other issue is converting existing web pages. Since you can't have components in one without the other, I found I had to start from scratch and add component by component. I left off all of the complex Javascript since it is very tricky in Wicket. I also did away with CSS for now. What I was left with is an HTML table within table, within table, etc. Since the original screen had tables with pagination, I was able to use Wicket's components. The issue again is the beautification is up to the developer. By the time I was able to convert just the meat of the screen, it took over a week. I also ended up with 16 new Java classes. In my opinion, there is tight coupling in Wicket and I estimate 3,400 new Java classes to replace all of our jsp pages. That's with re-use too.

Then I prototyped with JSF using IceFaces. I chose IceFaces because it seemed IceFaces was a bit more friendlier to configure and it felt more active than RichFaces. Remember, I said I did this last Spring. Being familiar with JSF and Facelets, I had an unfair advantage. It took me less than 2 days to have the page written using JSF and Facelets. That included all validation and formatting. Unfortunately, I was not able to configure OC4J to use Facelets. Here's where things get interesting. OC4J is done by Oracle. Oracle bought up Sun, who made Java and JSF. Oracle says use Web Logic. Fun. Really, by the time we get around converting over to Web Logic, JSF 2.0 will be mature. It does have a tempting feature set and IceFaces and RichFaces are proceeding ahead with JSF 2.0 codebases by the summer.

In short, Wicket is 100% Java and is easier to configure. JSF is more fun and seems easier to learn if you have Struts/JSP background. JSF also has a ton of components that pretty much handle 90% of any task you need to do and you don't have to be a web designer to get a nice site up and running. I also found Wicket can get very bloated - the sample web page took over 3,000 lines of Java code. Told you this application is huge, it's not a login page with 2 or 3 fields on it. Think full-fledged banking application - anything and everything a bank does is in this application. Maybe if this a tiny application I might choose Wicket, but it's been 10 years since I've seen a small app.