Grails 2.4.4 + с возможностью поиска:0.6.9 проблемы во время выполнения
При попытке добавить searchable:0.6.9 (или менее) в приложение Grails 2.4.4 я получаю исключение, генерируемое hibernate4, но это происходит только тогда, когда я добавляю "static searchable = true" в мой класс домена.
Учитывая, что мой BuildConfig.groovy выглядит так:
repositories {
inherits true // Whether to inherit repository definitions from plugins
grailsPlugins()
grailsHome()
mavenLocal()
grailsCentral()
mavenCentral()
mavenRepo "https://repo.grails.org/grails/core"
mavenRepo "https://oss.sonatype.org/content/repositories/releases/"
mavenRepo "http://repo.spring.io/milestone"
}
dependencies {
compile "org.compass-project:compass:2.2.1"
compile('org.apache.lucene:lucene-highlighter:4.10.2',
'org.apache.lucene:lucene-spellchecker:3.6.2')
test "org.grails:grails-datastore-test-support:1.0.2-grails-2.4"
compile "javax.validation:validation-api:1.1.0.Final"
runtime "org.hibernate:hibernate-validator:5.0.3.Final"
}
plugins {
// plugins for the build system only
build ":tomcat:7.0.55"
// plugins for the compile step
compile ":scaffolding:2.1.2"
compile ':cache:1.1.8'
compile ":asset-pipeline:1.9.9"
runtime ":hibernate4:4.3.6.1" // or ":hibernate:3.6.10.18"
runtime ":database-migration:1.4.0"
runtime ":jquery:1.11.1"
runtime ":searchable:0.6.9"
}
Я получаю это исключение:
ОШИБКА context.GrailsContextLoaderListener - Ошибка при инициализации приложения: org/hibernate/impl/SessionFactoryImpl Сообщение: org/hibernate/impl/SessionFactoryImpl Line | Метод ->> 95 | injectLifecycle in org.compass.gps.device.hibernate.lifecycle.DefaultHibernateEntityLifecycleInjector 147 doStart в org.compass.gps.device.hibernate.HibernateGpsDevice
Кто-нибудь знает, как заставить вещи работать, пожалуйста?
2 ответа
Очевидно, что плагины, упомянутые в заголовке этого поста, не смешиваются! Пейзаж GG быстро меняется, и Searchable 0.6.9 не пожмет руку с Hibernate 4.
Решение? В настоящее время я рассматриваю вместо этого ElasticSearch - обновленный (по состоянию на вчерашний день фактически) и хорошо сочетающийся со свежими плагинами. Делает ли он то, что делает Searchable, то есть, в конечном итоге, заканчивая полем поиска, которое можно использовать для извлечения и отображения записей из моих классов поиска и / или поиска внутри? Узнаем и доложим.
Я не думаю, что плагин для поиска работает с Hibernate 4, но вы не объявили зависимость от какой-либо версии Hibernate, которая определенно не будет работать.
В моем приложении Grails 2.4.4 я использую поиск с использованием следующей версии плагина Hibernate
plugins {
runtime ':hibernate:3.6.10.18'
// other plugins
}