We have a large, unwieldy but fairly stable web application written with Tapestry 4.1, which we're looking to gradually move off of. To that end we're looking at developing some new functionality in Grails instead. Our customers should never know the difference, and if possible, no one internally, e.g. in installation services, should have to care either -- ideally, the Grails app would be in the same WAR as the existing Tapestry code, just with GrailsDispatcherServlet
configured for a more specific path. It's also crucial that there's the minimum of change to the monster build process for the existing application -- redoing the build system (currently Ant, transitioning to Maven) in Gant and Ivy isn't an option. And it would be nice if we could work with exploded WARs for live reloading during development.
Questions, then:
- Is this possible?
- If so, where do I start?
- If not, what's the next best approach?
- What do I need to watch out for?
Note by the way that we won't be using GORM; all our data comes from web services, which we already have Java domain and messaging layers for.