Multi Tenancy - динамически регистрируйте источники данных JNDI - PullRequest
2 голосов
/ 24 февраля 2012

Я хотел бы знать, как динамически регистрировать источники данных JNDI с помощью модуля multi-tenant-core-plugin в режиме с одним владельцем.Я искал почти две недели и нашел несколько подсказок, как это сделать, например, JndiTemplate или BeanBuilder.Но я не смог понять это ..
Буду признателен, если кто-нибудь сможет мне помочь ..

Немного информации по этому поводу: Grails 1.3.7, Hibernate 1.3.7 Tomcat 1.3.7 Multi-tenant-core plugin 1.0.0

Было бы очень приятно зарегистрировать клиента с его собственным источником данных на лету, не останавливая программу и добавляя его в grails.naming.entries и в DatasourceTenantMapЯ знаю, что существует класс домена DataSourceTenantMap.groovy:

class DataSourceTenantMap {
   String dataSource
   Integer mappedTenantId

   static constraints = {}
}

, но мне нужно зарегистрировать больше, чем просто mappedTenantId и источник данных.Поэтому я попытался связать BasicDataSource с JndiTemplate или NamingManager.Но это не сработало ..

Если вам нужна дополнительная информация, пожалуйста, попросите их!

1 Ответ

0 голосов
/ 19 июня 2012

Я публикую это как ответ, так как не могу понять, как сделать комментарий.(имеется в виду, что я не вижу ссылку «Добавить комментарий» выше).

У меня была такая же проблема с Grails 2.0.3

См .: Grails 2, несколько динамическихИсточники данных в службах

Возможно, я немного впереди, потому что я внедряю компонент источника данных - то есть у меня точно такой же сценарий - но он не воспринимается Grails.

Проблема универсальна, и я надеялся, что кто-то из команды grails с пониманием ответит:

Многопользовательское приложение, работающее в качестве службы, должно допускать добавление еще одного арендатора во время выполнения.Это означает, что если я хочу сообщить приложению, что существует новая база данных арендаторов, которую оно должно использовать, я смогу сделать это во время выполнения, а не подпрыгивать в приложении.

...