Groovy 도메인 클래스에서 "공공 클래스 Foo"vs "Class Foo"
문제
다음 Groovy 코드는 Grails-App/domain/foo.groovy에 작성 될 때 Foo라는 Gorm-Peristed 도메인 클래스를 만듭니다.
class Foo {
String someField
}
그러나 대신 "Public Class FOO"를 작성하면 클래스가 Gorm-Peristed를 얻지 못합니다 (예 : No Save () 메소드가 주입, 데이터베이스 테이블이 생성되지 않은 등) :
public class Foo {
String someField
}
나는 Grails의 최신 안정적인 릴리스 (1.1)를 실행하고 있습니다.
의문: 이것은 버그입니까 아니면 예상되는 행동입니까? 왜요?
업데이트 #1 : 관련 하위 질문 :이 문제를 겪는 유일한 사람입니까? 다른 사람이 이것을 복제 할 수 있는지 아는 것이 좋을 것입니다. 감사!
해결책
그루비 클래스는 기본적으로 공개적이므로 (그루비 방법의 경우와 마찬가지로) 추가하면 동작이 변경되지 않아야합니다. public
. 그러나 나는 성배 에서이 행동/버그를 재현 할 수 없다 1.1.1
다른 팁
나는 1.3.3 에서이 행동을 얻지 못한다
DomainClassArteFacthandler.groovy에서 "isdomainclass"메소드를 확인하십시오. 당신은 (적어도 1.3.3에서) 제외 된 유일한 유형은 폐쇄와 열거입니다.
제휴하지 않습니다 StackOverflow