I'm looking for a full stack framework (from persistency to view generation (CRUD)) for Java. I don't have experience with Rails style frameworks, like Grails, but I worked a lot with Hibernate, Struts, Spring ...
I prefer a framework that let you naturally modify the business domain design with the less effort ( i.e. writing the sql querys to modify the tables and constrains, change the view pages, etc ... ). I was looking a bit about this topic, I saw Naked Objects for example but its development has stopped.
So, I want to hear about your experience.
Thanks in advance.
Better late than never :)
there is a new Full Stack Java Framework avaible now called CUBA platform . Please find more infor at https://www.cuba-platform.com/
Grails is the closest thing I know of to a full stack framework in Java (at least for general web apps). You define the domain objects and use them in your Grails controllers and views. To generate the tables, you use the GORM utility to create them from your domain objects.
On the contrary, development hasn't stopped on Naked Objects, and we quietly released Naked Objects 4.0 a few months ago. There are also a number of sister projects that I have worked on, extending the capabilities of the framework. In addition, my book, "Domain Driven Design using Naked Objects", was released just before Xmas.
For more details, see:
- naked objects
- star objects: sister projects to naked Objects
- my book's website
- my blog
Cheers
Dan
Two other full stack frameworks are Play (www.playframework.org) and Web4J (www.web4j.com). I never used either one, but both seem interesting.
It's possible to go a very long way with just JSPs written with JSTL and JDBC.
If you've mastered that, I'd say that Spring alone would be sufficient.
You might want to check out Spring Roo which is a Spring project based on what you already know, ie Spring, Hibernate, but that gets you up to speed fast, by adopting a Convention over Configuration philosophy.
There is a blog post that describes the steps for creating a blog that might explain better what I mean
Take 5 minutes for look at Ninja Framework : website
You will love it.
This is using java the closest implementation to a script language like Python or PHP.
It has ultrafast development flow that resembles PHP flow: they call it SuperDevMode.
Openxava, this is the right tool for your needs.
It's a Domain Driven Framework, you just write your JPA model class and Openxava generates de interface, with easily customizable view, actions and controllers.
visit: www.openxava.org
You can try JRapid. Using JRapid you define your application using Domain Driven Design and it generates all the layers for your web app, from database to a powerful UI.