Базовый класс добавлен в подкласс с tablePerHiearchy false для SQL, созданного с помощью Grails 2.3.2 и Hibernate 3.6.10.3 после перехода с Grails 1.3.7

#hibernate #grails #grails-orm

#спящий режим #grails #grails-orm

Вопрос:

В настоящее время у меня есть это для моего базового класса:

 abstract class NSSDomainEntity {

    String id
    static mapping = {
        tablePerHierarchy false
    }
}
  

Затем мой класс:

 class NSSPermissions extends NSSDomainEntity {

    static mapping = {
         table name: 'ncm_permissions', schema: 'NSSPROD'
         id generator: 'uuid'
    }
}
  

Каким-то образом при запуске приложения сгенерированный sql был:

select this_.id as id40_0_, this_1_.version as version40_0_ from ncm_permissions this_, nssdomain_entity this_1_

Базовый класс также использовался для запроса, выдавая мне исключение

ORA-00942: таблица или представление не существуют

Неужели tablePerHiearchy больше не поддерживается в grails 2.3.2?

Или есть какие-либо настройки, которые я пропустил. Установка все еще работала в соответствии с grails 1.3.7 до обновления до 2.3.2.

Комментарии:

1. ncm_permissions Существует ли таблица?

2. Не имеет прямого отношения к вашему вопросу, но на данный момент обновление до 2.3.2 необычно. Мы выпустили 2.3.2 около 7 лет назад. Если вы по какой-то причине хотите использовать Grails 2, есть ли причина, по которой вы выбрали именно этот выпуск исправления?

Ответ №1:

Неужели tablePerHiearchy больше не поддерживается в grails 2.3.2?

Я считаю, что это так.