I'm glad you've found the article useful -- we owe a lot to the MyFaces community.

By the way, Sakai is open source, and so I hope that some of what we've done can be moved into other projects. In particular, we think it would be great if any of our work can be folded into MyFaces itself.

As I wrote, we ended up not building directly on x:saveState, but instead building on the same idea. The actual Java code in both cases, though, is very simple and short.

Sean Schofield wrote:

>I would have liked to have seen a rundown of
>what they liked about JSF in addition to a list of problems and how
>they solved them.

I guess I do sound a little stressed out. :) Frankly, I think that dictating use of a 1.0 technology (particularly one with so many changes from its last beta) was a mistake for a project this size. It's true that we managed to work around the most serious problems (with help from MyFaces!), but it's depressing thinking about how much of that work is likely to be thrown away when JSF 1.2+ is available.

And I think JSF's early insistence on "all components all the time" was a mistake as far as separation of concerns goes -- I think most long-lived projects would prefer to let UI designers make changes in web presentation layout independently of Java programmers. (I'm looking forward to the work that's being done on JSF-based templating.)

But the problem was, of course, what else to use. There's not an obvious best choice. As a clean MVC approach, JSF certainly seems superior to Struts. When we started, Spring MVC seemed even riskier than JSF. (Nowadays I wonder how the combination of Spring + JSP 2 would've worked, but I have no practical experience to go by.) Tapestry & Velocity both have good points, but we wouldn't have been able to swing all of the rest of the Sakai project in that direction.

Best,
Ray


Reply via email to