Why Web Developers Need JavaServer Faces
Subject:   Tapestry and JSF
Date:   2003-07-24 00:24:43
From:   anonymous2
Tapestry framework looks very good. I thing, Sun could save a lot of many...
Full Threads Oldest First

Showing messages 1 through 4 of 4.

  • Tapestry and JSF
    2003-07-24 07:54:21  hlship [View]

    I've been dismayed every time I've looked at JSF. You have to poor on loads of code to get anything done, there's that single event listener method for the entire app (I hope they've done something about that subsequently), and you are basically screwed without tools support.

    I built Tapestry to address the same problems and its easier and better than JSF right down the line; less coding, better seperation, more flexibility ... and something even more key: years of exposure.

    Because Tapestry didn't come out of Sun and a JSR, there was never the need to promote the myth that it was the perfect solution out of the box. Instead, I've had three years to build a community, listen to my end users, and improve the framework iteratively and flexibly. Many of my initial concepts have proven wrong in the field and I've adapted the framework to meet the real world.

    The basic proposition of JSF ... that developing a web application requires specialized IDEs and tools is refuted by Tapestry which works better than JSF without specialized tools. A standard WYSIWYG HTML editor is the most that you need. Spindle (the Eclipse plugin) improves productivity but is not a requirement to make use of Tapestry.

    I'm definately in the camp now that says the JSR concept is fundamentally flawed; you don't innovate by committee. JSF is a big ugly kludge as Sun defends its prior mistakes (JavaServer Pages, JSP tags) without acknowledging their limitations and oversights.
    • Tapestry and JSF
      2004-12-04 21:16:10  jlong [View]

      I absolutely, wholeheartedly agree. I used Struts for a year. I then moved to a different company and didn't want to undertake a project (a massive project whose Hibernate domain model has literally hundreds of individual classes) in Struts. So, I tried JSF and came back with my head spinning. Nothng came of it-- though the whiz-bang feel was certainly there for the two or three useful screens we did build. Anyway, we adapted Tapestry. Tapestry has literally taken a project that was stalled in development hell for almost a year and finished it, rebuilt from the groun up, in 3 months. We built it from the ground up using Tapestry. We added things as we learned, but it was all very intuitive. First, simple forms for customer input and simple screens for reporting. Eventually, simple screens became editable screens. We added html-only, macro-style components to standardize our GUI. We then added components with more interactive, dynamic functionality like our menuing system. Many of our forms leverage the supportof Tapestry for common use cases -- use cases that most database schemas dictate. Date input is trivial with the DatePicker. Many to many relationships (ie, take a User who can be assigned many roles from many possible roles) are a breeze with the Palette. One to many relationships using drop down menus are easy AND consistantly developed. Other one-to-one, or input on domain properties which has always been easy is still easy, but now its also robust. For example, telephone numbers, zipcodes, credit cards, etc. can all be validated and guaranteed with Tapestry's validation system. Atop of all this is ridiculously easy localization (hell, it's almost easier to use the localization framework than to avoid: our manager always wants to tweak the copy displayed on various pages. So we just send him the .properties file. Easy!), easy gui development (Mr. Ship was sincere: 95% of the development for our views happens in DreamWeaver), and easy err... messaging.. that is... i haven't ONCE worked with a URL when building this application. Page flow is trivial to implement.

      The only other framework out there whith which I've had this experience is ASP.NET. But even there, it's not as sophisticated. .NET, out of the box, doesn't come with as many useful components (there are 3 calendars in .NET and not one of them is as sexy as the one in Tapestry.).Templating in .NET is Still, at the end of the day, a hackneyed, componentized form of include() on each page in different sections of the GUI. And, of course, you can use VS.NET to view your gui, but nthing else. asp: tags. just aren't the same as html.

      Anyway, sorry for hte rant. I'm a true fan of Tapestry. I can only say that I wouldn't undertake a google-style application with Tapestry. It does run, like .NET does, a little slower than say a raw cgi/servlet application.

    • Tapestry and JSF
      2003-07-24 11:20:50  anonymous2 [View]

      I agree w/ you whole heartedly. I wish the people at Sun and the JCP vendors would have the balls to own up and say "We have fucked up and we are sorry and we will turn to the developer community (not vendors) to help us unfuck ourselves."
      • Tapestry and JSF
        2003-07-25 20:13:41  anonymous2 [View]

        They need to declare JSPs deprecated and step back from this silly need to standardize everything.

        Jason Carreira