I had a brief conversation with Cay Horstmann during JavaOne at which I was eager to hear his list of gripes about JSF.  Before I get into the content, I have to say I don’t know why people feel compelled to be unprofessional when they talk about this stuff.  What can be gained by starting out a conversation with, “So I went through Core JSF and looked for all the Derogatory comments about how stupid the so-called expert group was...”?  Granted, he follows up with, “and it wasn’t as bad as I remembered”, but still, if you’re going to be colloquial, why start out unprofessional about it?  Thankfully, the rest of the conversation mostly sticks to the technical content.  If you haven’t been to JavaOne, this is an example of a typical hallway conversation that I end up having there.

Here are Cay’s points from the conversation.  The raw audio is available at <http://mediacast.sun.com/users/edburns00/media/20090602-cay-horstman-jsf2-hallway-conversation.wav>.

     
          
  • Inconsistencies regarding converter and validator tags        regarding when they sometimes take an id, sometimes take a        method reference, sometimes they take a class name...       

  •       
  • Methods in Mojarra that are needed by application        developers.  Look at the common things that every app        developer needs, put it into the API.

  •       
  • Injection.  We have the annotation on the field, but it        really acts on the setter.  This will confuse people.

  •          
  • Internationalization of Resources.  Current design is           broken in the following way: it doesn’t have a natural local           fallback mechanism as the normal ResourceBundle does.          

  •          
  • Different Viewpoints for the JavaDoc: app developer,           component developer, etc.

  •          
  • Love the color coding in the Javadocs.          

  •          
  • TLDDocs missing some content (mostly fixed now).          

  •          
  • Cay suggests a “fit and finish JSR” for JSF.          

  •      

Technorati Tags: edburns

3 Comments

  • 392 Guest Newbie
    Is it me or are there no real big issues in that list? I only see minor issues. Standardizing useful Mojarra and MyFaces methods seems useful though. Nobody likes to type FacesContext.getCurrentInstance() over and over again. Useful utilities like: JSF.fc(), JSF.externalContext() and JSF.viewRoot() would save me a lot of typing. These kind of utilities are often the first thing I write. //
    • cayhorstmann-3071947 Master
      Hi Ed, sorry you felt offended by my initial comment--I just meant to be funny. You know that I have the highest respect for your hard work. Thanks for posting the list. I meant to do this for a long time. Just for clarification. I do NOT want a JSR just for fit and finish. I'd just like the JSF expert group make an explicit "fit and finish" effort for JSF 2.1/3.0 in the scope of the next JSR. @jkva: Yes, these are all minor, and my point in talking to Ed was to raise visibility for these minor issues. The expert group does very well with the big issues, but the "fit and finish" tends to fall between the cracks when deadlines loom. //
      • 392 Guest Newbie
        Cay Horstmann's comments, both in the beginning of your interview, and now after your post are spot on ... and funny.  The JEE community, on the other hand, has been full of snobs for years who have spent plenty of mouth on good coders like Ed and Jay in the forums and in hallway conversations making derogatory statements about various frameworks with the mistaken impression that it makes them sound like a Java expert. From his recent book "Secrets of the Rock Star Programmers", Ed does just the opposite, and a little truth goes a long way.  For example, he commends Rod Johnson saying that he is an inventor that "revolutionized Enterprise Java application development".  That's a nice and professional way of saying that Rod actually fixed JEE instead of just whining about it and grandstanding. How many forum posts can I recall from "Java experts" complaining about this or that web framework, and _especially_ J2EE, and how it is broken this way or that?  Well, I would like to second Cay's remarks that the new version of JSF looks great! Where I work, we will continue to use JSF in our apps, in spite of "how stupid the so-called expert group" is because, stupid or not, the new JSF is an outstanding framework, and we like seeing people, like Ed and Cay, who actually step up to the plate and do the hard work that it took to get JSF where it is, and it is excellent. And we have heard you other "Java expert" mouths out there and seen the magic numbers you have left in our code repositories.  We know who you are, and why you try to drag other people's good work down.  We do not like you.  Your days are numbered. //