I don't have any experience with Tapestry, hence my comment is not a
really VS. one, but I suggest JSF because:
1. It's Standard. See J2EE 1.4 Spec.
2. It's component based design.
3. It's so easy to develop with JSF.
By the way, if you wanna use JSF, I suggest you get a look at JBoss Seam.
It's a GREAT SoC framework.