Grails — взаимосвязь таблиц «один ко многим» между пакетами

У меня есть два класса, каждый в разных пакетах, и между ними существует связь «один ко многим». Как это делается? У меня есть:

package one
class History {
  String name
  static hasMany = [fielderror:FieldError]
}

package two
class FieldError {
  String fieldName
  static belongsTo = [history:History]
}

Если бы они были в одном пакете, это бы сработало, но это не так. Ошибка в package one:

Groovy: кажущаяся переменная «FieldError» была обнаружена в статической области, но не относится к локальной переменной, статическому полю или классу.

Итак, я думаю, мне нужно, чтобы package one знал о package two и наоборот. Как?


person rtfminc    schedule 05.07.2012    source источник


Ответы (1)


Добавьте импорт как для любого класса в другом пакете:

import one.FieldError
person Burt Beckwith    schedule 05.07.2012
comment
Import two.FieldError — я так и думал, но получаю сообщение об ошибке Groovy: невозможно разрешить класс two.FieldError. Я заменяю FieldError на *, а затем возвращается к исходной ошибке! - person rtfminc; 05.07.2012
comment
Ладно, ты прав. Кажется, IDE, которую я использовал - springsource, как только он обнаруживает некоторые ошибки, сохраняет их (или теряет), даже когда вы их исправляете. Перезагрузил мою IDE, и, конечно же, ошибки исчезли, и операторы импорта работают. - person rtfminc; 05.07.2012