Stick or Twist: The programming language dilemma
wannabevc.wordpress.com
wannabevc.wordpress.com
Furthermore the design of components is backwards, making it impossible to properly encapsulate reusable components. I forget exactly how it worked, but I remember that you had to pass parameters down from parents to children, and because of the way variables were passed data ended up alternating through html-like files and java code, making it very hard to see where a given variable had come from.
After a month or so of that we switched to Wicket, which remains the best web framework, and quite possibly the best object-oriented library, I've ever used.