исключение grails 3.3.8 развернуть в weblogic 12.2.1.0.0 (может быть проблема с Hibernate 5) - PullRequest
0 голосов
/ 11 октября 2018

У меня есть исключение при развертывании моего приложения grails 3.3.8 в weblogic. Я думаю, что эта проблема может быть связана с hibernate 5 (приложение использует старый пакет hibernate на weblogic или любые конфликты)

Исключениежурнал weblogic:

*2018-10-11 10:04:23.321 ERROR --- [ (self-tuning)'] o.s.boot.SpringApplication               : Application startup failed
org.springframework.beans.factory.UnsatisfiedDependencyException: 
Error creating bean with name 'methodValidationPostProcessor' defined in class path resource [org/springframework/boot/autoconfigure/validation/ValidationAutoConfiguration.class]: 
Unsatisfied dependency expressed through method 'methodValidationPostProcessor' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'hibernateDatastoreServiceRegistry': Cannot resolve reference to bean 'hibernateDatastore' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'hibernateDatastore': 
Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: 
Failed to instantiate [org.grails.orm.hibernate.HibernateDatastore]: 
Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: javax/validation/ClockProvider*

... 

Caused by: org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'hibernateDatastoreServiceRegistry': Cannot resolve reference to bean 'hibernateDatastore' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'hibernateDatastore': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: 
Failed to instantiate [org.grails.orm.hibernate.HibernateDatastore]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: javax/validation/ClockProvider

Мой weblogic.xml содержит:

<wls:container-descriptor>
    <wls:prefer-web-inf-classes>false</wls:prefer-web-inf-classes>
    <wls:prefer-application-packages>
        <wls:package-name>org.slf4j.*</wls:package-name>
        <wls:package-name>org.jboss.*</wls:package-name>
        <wls:package-name>javassist.*</wls:package-name>
        <wls:package-name>org.springframework.*</wls:package-name>
        <wls:package-name>org.hibernate.*</wls:package-name>
        <wls:package-name>org.hibernate.validator.*</wls:package-name>
        <wls:package-name>org.grails.orm.hibernate.proxy.*</wls:package-name>
    </wls:prefer-application-packages>
</wls:container-descriptor>

Приложение имеет несколько источников данных, часть application.yml:

dataSources:
        dataSource:
            dbCreate: update
            url: jdbc:oracle:thin:@myfirsthost.ru:1527:sun
            dialect: org.hibernate.dialect.Oracle10gDialect
            driverClassName: oracle.jdbc.OracleDriver
            username: firstusername
            password: firstpassword
        test:
            url: jdbc:oracle:thin:@mysecondhost.ru:1527:sun
            driverClassName: oracle.jdbc.OracleDriver
            dialect: org.hibernate.dialect.Oracle10gDialect
            username: secondusername
            password: secondpassword

Первая база данных источника данных, созданная приложением grails (и имеющая классы домена), вторая тестовая база данных является внешней только для чтения на сервере БД ORACLE (и не имеет классов домена))

Приложение работает на локальном ПК и сервере Apache Tomcat Http, но я не могу развернуть его на weblogic

У кого-нибудь есть мысли, как решить эту проблему?

Спасибо

...