views:

393

answers:

4

Hi all

My choice is between

  • Tapestry 5
  • Vaadin
  • JSF2

--- start EDIT 2010-05-13 18:04 --

  • Spring MVC (don't know why I forgot to mention this)

--- stop EDIT 2010-05-13 18:04 --

I like Vaadin most, because it seems to come with all the look-and-feel features out-of-the-box, I wonder if anyone has experience with Vaadin and JPA2, preferrably EclipseLink.

JPA2 is absolutely essential, the Web2.0 framework must integrate with it.

Thanks Err

--

+2  A: 

JSF 2.0 and Wicket 1.4 are first class candidates: they just work with JPA 2.0 and provides support for the Bean Validation API (JSR 303) which is in my opinion a very important part of the question. Have a look at this blog post for more details on this.

To be fair, I'll mention that Tapestry 5.2 (not sure it has been released) will also provide integration with JSR 303 as detailed here but I'm not in love with Tapestry.

Regarding Vaadin, it seems that things are more complicated than with "regular" web framework and JPA 2.0 support to JPAContainer has yet to be added (Ticket #4298).

I'd go for JSF 2.0 or Wicket.

Pascal Thivent
+1  A: 

JPA2 being part of J2EE 6 fits naturally with its other components: EJB 3.1, JSF 2, CDI (Web Beans), etc.

If you consider other frameworks then you need to understand what features and benefits you gain by replacing J2EE 6 components.

grigory
Well, most important, I want an easy convention-over-configuration solution in JAVA (No Grails). I know about Spring-Roo, but I want to do the data-modelling myself ... Benefit should tackle rich gui like jQuery/Dojo)
With J2EE you get annotation-based development and as little configuration (almost none) as it can get. Try embedded OpenEJB with Tomcat and see for yourself. jQuery/Dojo will work with most frameworks anyway...
grigory
@grigory: "jQuery/Dojo will work with most frameworks anyway..." O really? Great. That's what I wanted to hear. Wonder how asynchronous e.g. autocompletion will work, but I will find it out. Thanks!
also, I assume that you are aware of other higher level client/JavaScript frameworks like RichFaces (works nice with JSF)
grigory
A: 

I use Vaadin with their Spring integration coupled with EclipseLink and it works pretty well.

rochb
Really? I read recently that JPA works well but JPA*2* has not been intregrated yet. Are you sure you make use of JPA*2*?
EclipseLink is the reference implementation. If you integrate it with Spring within a Vaadin webapp, it works.
rochb
+1  A: 

Take a look at this blog post which describes how to apply JPA based persistence for Vaadin applications. It uses JPA2 provided by EclipseLink.

Kim L