2014-11-20 6 views
3

Grails 2.4.4 앱에서 검색 가능한 항목을 0.6.9 이하로 추가하려고하면 hibernate4에 의해 예외가 발생하지만 다음과 같은 경우에만 예외가 발생합니다. 내 도메인 클래스에 "static searchable = true"을 추가합니다.Grails 2.4.4+ 검색 가능 : 0.6.9 런타임 문제

내 BuildConfig.groovy이 보이는 점을 고려 :

오류 context.GrailsContextLoaderListener - 오류 응용 프로그램을 초기화 :

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" 
} 

나는이 예외가 조직/최대 절전/IMPL/SessionFactoryImpl 메시지 : org/hibernate/impl/SessionFactoryImpl 라인 | 방법 - >> 95 | injectLifecycle doStart org.compass.gps.device.hibernate.HibernateGpsDevice

에서 org.compass.gps.device.hibernate.lifecycle.DefaultHibernateEntityLifecycleInjector 147 는

사람이 일을하시기 바랍니다 작동하는 방법을 알고 있나요?

답변

0

분명히,이 게시물의 제목에 언급 된 플러그인을 함께 사용하지 않는 최대 절전 모드 플러그인의 다음 버전으로 검색을 사용! GG 환경은 빠르게 변하고 Searchable 0.6.9는 Hibernate 4와 악수를하지 않을 것이다.

Solution? 현재 대체로 ElasticSearch을 고려하고 있습니다. (어제는 사실대로) 새 플러그인으로 잘 섞여 있습니다. 그것은 Searchable이하는 일을 의미합니까? 결국 검색 가능한 도메인 클래스 및/또는 검색 가능한 속성의 레코드를 검색하고 표시하는 데 사용할 수있는 검색 필드로 끝납니다. 찾아보고 할 것입니다.

1

내가 검색 가능한 플러그인이 최대 절전 모드 4와 함께 작동합니다 생각하지 않습니다,하지만 당신은 에 대한 종속성을 확실히 작동하지 않습니다 최대 절전 모드, 모든 버전을 선언하지 않았습니다. 내 Grails의에서

은 2.4.4 응용 프로그램, 나는

plugins { 
    runtime ':hibernate:3.6.10.18' 
    // other plugins 
} 
+0

당신이 맞습니다,하지만 그것은 hibernate4 : 4.3.6.1 ""의존성 "런타임"을 제거한 것입니다. 나는 그 오류를 얻기 위해 사용하고있는 정확한 설정을 보여주기 위해 나의 원래 게시물을 편집했다. 나는 최대 절전 모드를 시도했다. 물론 3.6.10.18이지만, 내 응용 프로그램은 컴파일되지 않는다. 나는 JDK8u25를 사용하고 있는데, Windows 7과 Mac OSX 10에서 이것을 시도했다. 이전의 최대 절전 모드로 실행할 때 이것을 얻는다 : 메시지 : 'transactionManagerPostProcessor'라는 이름으로 빈을 생성하는 중 오류가 발생했다. 중첩 예외는 org.springframework.beans.factory.BeanCreationException입니다 : ... – mohsenmadi