I recently got Broadleaf Commerce running on Grails 2.0. Unfortunately, it was not a trivial task. Therefore, what I did was create a Grails Plugin for Broadleaf Commerce to simplify the process for Grails users. This plugin has not been released yet. It will be released soon as part of the Broadleaf 1.7 project. The most difficult part of this was related to the following:
- Dependency resolution
- Broadleaf's merge process and lifecycle management on Grails
- Unifying GORM and JPA
Broadleaf Commerce currently depends heavily on Spring 3.0 and JPA 2.0. In order to get it running on Grails we needed to update Broadleaf's dependencies to use Spring 3.1. The use of Spring 3.1 will be officially part of the Broadleaf 1.7 branch. We also needed to make use of the GORM JPA Plugin (
http://grails.org/plugin/gorm-jpa). That plugin currently supports JPA 1.0, but we were able to make it work. Broadleaf also requires three data sources and three transaction managers to be defined. Technically, they can all reference the same physical database, but they need to be defined as three separate ones for flexibility. The GORM JPA Plugin currently only allows for one of each. We were, however, able to make it work with some limitations. More thorough testing is required for all of this.
We believe that Broadleaf Commerce is the best eCommerce solution for use with Groovy and Grails. We are committed to ensuring that Broadleaf runs well on Grails. More work is required to get an enterprise-ready solution to market. As I mentioned, it is not trivial. But we are working on it now.
I don't believe we will be supporting a plugin for, or integration with, Grails 1.x, though.