Я использую плагин CXF версии 2.0.1 и имею простое использование GORM в SOAP-сервисе. Когда я запускаю тест в службе, он выдает исключение, говоря, что он не может инициализировать прокси-сервер, потому что сеанса не было. Согласно некоторым запросам, которые я сделал, это проблема спящего режима, которую я предполагаю, означает, что GORM не была правильно инициализирована. Может ли кто-нибудь дать мне указатель на то, как инициализировать GORM вручную в классе конечной точки?Плагин Grails CXF и GORM
ответ
Вы используете для работы с гибернацией в действиях контроллера (или оттуда называемых там методов), и там всегда есть активный сеанс Hibernate, потому что Grails использует шаблон Open Session in View, открывая сеанс в начале запроса, привязывая его в ThreadLocal, чтобы его можно было легко получить, а затем очистить и закрыть сеанс в конце запроса. Некоторые плагины также делают это, например, плагин Quartz использует прослушиватели запуска/остановки работы, чтобы сделать то же самое, чтобы вы могли удобно использовать GORM там, как в контроллере.
Самый простой способ гарантировать, что сеанс открыт в течение всего периода кода, - использовать статический метод withTransaction
для любого класса домена. Он запускает транзакцию, поэтому, если вы делаете обновления базы данных, вы также выиграете от этого, но даже если вы только читаете, это путь, потому что сеанс будет открыт, и вы сможете работать с лениво загруженные 1-много и много-много ссылок.
Сделки/сеанс не имеет ничего общего с классом домена, поэтому выбрать случайную одно и использовать его:
User.withTransaction {
def games = Game.findAllByFooAndBar(foo, bar)
games.each { ... }
...
}
- 1. Плагин Grails CXF Webservice
- 2. Grails CXF Pluggin
- 3. Установка плагина Grails CXF
- 4. Grails CXF BeanCreationException
- 5. Grails CXF-клиент плагин wsdlArgs -exsh Неожиданный вариант:
- 6. Grails + CXF + secureServiceFactory
- 7. CXF-CodeGen-плагин не соответствует CXF ValidationFeature
- 8. Встроенная интеграция CXF в grails
- 9. grails cxf access soap headers
- 10. Grails 2.0 и плагин PayPal
- 11. Скомпилированный и подписанный плагин grails
- 12. Maven плагин CXF API Несовместимость
- 13. Защитный плагин от Grails?
- 14. Grails поисковый плагин
- 15. Плагин Grails Eclipse
- 16. Плагин jQuery Grails
- 17. Плагин Grails: обратная совместимость
- 18. Grails, плагин визуализации google
- 19. Плагин Grails Currencies
- 20. Почтовый плагин в Grails
- 21. Плагин с использованием Grails
- 22. ошибка отпуская Grails плагин
- 23. Плагин Grails JS minify
- 24. Пользовательского Grails плагин зависимость
- 25. Плагин Fields - таблица Grails
- 26. Плагин Grails для DocumentDB
- 27. Защитный плагин Grails
- 28. ElasticSearch Grails плагин
- 29. Плагин Grails: статический ресурс
- 30. Плагин ресурсов Grails