Women in Technology

Hear us Roar

  Improving JSF by Dumping JSP
Subject:   What to do?
Date:   2004-06-10 13:51:52
From:   edsmithed
I am beginning development on a new project. Until now, I've been an advocate for using JSF; however, you article seems to point out a critical flaw with using JSP, the only interface required by JSF. The solutions you suggest are either 1) "here's a hack you can try..." or 2) "in the future we should..." Neither option seems very useful for a new project. Am I missing something? I'd hate to spend a bunch of time developing JSP front-ends when JSP is obviously not the best way to go.

Also, there are a few typos in the code of the first example. The last two lines are missing slashes, and the commandButton is missing the h prefix. At least, that's the way it appears in my browser.

Full Threads Oldest First

Showing messages 1 through 1 of 1.

  • What to do?
    2004-06-10 14:16:26  Hans Bergsten | O'Reilly Author [View]

    That's always a hard choice: should I adopt this new technology that seems to help me solve my problems, or should I pick some more established technology and be prepared to cut down on the requirements or do more work myself?

    Only you can answer that. JSF is a 1.0 spec, and all 1.0 specs have issues; let's not kid ourselves on that point. But it may still be worth it to use a 1.0 technology if you know what you're getting into.

    If you do go with JSF, after reading this artcle you're aware of the main issues with the JSP layer. You have to decide if you can live them or if it's worth it to you to instead develop a custom ViewHandler (maybe based on my "hack"). If you can wait a few months, other choices (such as open source custom ViewHandlers) may become available to you.

    But if you can't afford any risk, you should stay away from any brand new technology, because they all have flaws. The world is full of choices, and its up to you to balance the pros and cons, I'm afraid.

    Re: the typos, I'll try to get them fixed. Thanks for pointing them out.