Grails has amazing plugin infrastructure. In short it enables almost everything the core application can do and has really good list of plugins: http://grails.org/Plugins
Here what I want to say is something a little bit different:
Do all your business in your application plugin
You can reuse all implementation in your plugins:
Plugins can define their plugin dependency, just like maven dependency.
Model all your business in a single plugin.
You can consider grails an application container in this case which manages transactions and persistence, and ui and enable each plugin with all customization. What you need to do is using config. groovy and ConfigurationHolder for configuration issues.
What grails will do is just starting up plugins and and the applications one by one and expose all services, domain class and controllers which will work fine.
It will increase your modularity and ease your integration issues. You can also run your plugins while your are developing them. This is the most amazing part of all the scenario. You do not need to enter pack-install cycle to test anything.
If you have already established something like this before with Java you would have setup your IDE for this kind of integration. But for grails there is not support as far as far as I know
So be ready run some console commands:
cd mycore
grails package-plugin
cd ../myapp
grails install-plugin ../mycore/grails-mycore-plugin-0.1.zip
Reference Guide:
http://www.grails.org/The+Plug-in+Developers+Guide
Related posts:
Ceren said on Wednesday, April 15, 2009, 22:10
Using dependency is a nice idea but seperating the config files like SecurityConfig would be better.