I’d like to start a new project, and I’m considering grails. My prior experience with grails has been starting small projects to learn it, moving quickly through the core features without a hitch, and then getting stuck at some point, related to trying to use a plugin that ends up being buggy.
The things I really really like about it are GORM, and to a lesser extend the automatic bean wiring (basically @Service, @Controller, @Autowired, without the annotations). I think gsp is fine but for me HAML is a world above it.
On the other hand I’ve dabbled with scala and I really really like scala the language (much much more than I like groovy for example) and scaml. I’m wondering if anyone has successfully mixed these technologies (grails, scala, haml/scaml) easily.
I noticed for example that there’s a grails scala plugin, and a grails haml plugin, but then it seems like I’m (possibly) drifting into the territory of buggy plugins that I really dislike.
While we’re at it please feel free to let me know which plugins you’ve found to be completely safe. The searchable plugin is something I’d like to use if possible, as well as the spring-security/openid stuff.
Also, coding the whole thing by hand is an option for me (spring+scala+scalate+hibernate). I’ve mostly done it before (usually jdbc template instead of hibernate) I’m just hoping grails can give the code that I’d rather not write for free. I’m doing this project on free time and I’d like to avoid overhead to keep the project fun.
I did a blog post on this recently. Minus a few hiccups, I found using Scala in a Grails project to be extremely easy. We have an ongoing “discussion” here at the office of static typed vs dynamic languages and I wanted to prove that you can have [def] cake topped with [Cake] cake. You can read all the research I did here http://www.christianoestreich.com/2011/04/mixing-grails-groovy-scala-java/
With the innovation that is coming around the corner in Grails 1.4 http://www.grails.org/1.4.0.M1+Release+Notes, it is an even easier sell. The testing framework support is getting better, a faster database and integrated LiquiBase support, etc.
I find the templates and custom tag generation extremely useful in GSP. I am not sure what in particular you think is superior in HAML? Perhaps you could share WHY it is superior?
Plugin list: Resources (bundled with 1.4 now), Spring Cache, Build Test Data, Coverage and Spring Security. Those are pretty much what I use on all my projects. We are using Searchable and Taggable on a startup we are working on and like them very much.