Оказывается, проблема заключается в неправильном использовании конфигурации по умолчанию, предоставленной Grails. В файле DataSource.groovy каждому приложению присваивается указатель на базу данных, и по умолчанию этот указатель выглядит так:
development {
dataSource {
dbCreate = "create-drop"
url = "jdbc:h2:mem:devDb;MVCC=TRUE"
}
}
Проблема заключается в том, что нескольким приложениям будут присвоены одинаковые конфигурации, а базовые ссылки на базы данных h2 между несколькими приложениями конфликтуют. Поэтому решение для пары примеров приложений "Hello World" состоит в том, чтобы изменить одну из этих ссылок. Например:
development {
dataSource {
dbCreate = "create-drop"
url = "jdbc:h2:mem:devDb2;MVCC=TRUE"
}
}
Конечно, в рабочем коде вы, скорее всего, в конечном итоге будете ссылаться на реальную базу данных, и тогда ваши приложения будут естественным образом взаимодействовать в своих ссылках на базу данных.