나는 hibernate
.Under grails 1.3.7
모든 것이 제대로 작동을 사용하여 Grails 애플리케이션을 가지고,하지만 난 grails 2.0.3
로 전환 할 때 다음과 같은 문제가 나타납니다Grails의 고유 제한 조건
내가 java/src
디렉토리에 고유 한 필드를 확인할 수 없습니다. 동일한 고유 키가있는 레코드를 추가하거나 업데이트하려고하면 배치 삽입 오류가 나타납니다. src/groovy
에서
내가 확인하는 클래스를 생성 검증 :
Example: LanguageCommand.groovy
package myproject.command
import org.codehaus.groovy.grails.validation.Validateable;
@Validateable
class LanguageCommand {
String code
String codeDescription
static constraints= {
code(blank:false, maxSize:50)
codeDescription(maxSize:200)
}
}
및 src/java
에서 나는 독특한 필드
myproject.model
가 포함 된 패키지의 이름입니다
Example: LanguageConstraints.groovy
package myproject.model
constraints = {
code unique: true
}
를 확인하는 클래스를 생성 최대 절전 클래스.
참고 :Validation class works fine but the unique one not. i try to add unique constraints to validation class, same error appears
오류 :
Error 500: Executing action [save] of controller
[myproject.controller.LanguageController]
caused exception: Runtime error executing action
Servlet: grails
URI: /myproject/grails/language/save.dispatch
Exception Message: Batch entry 0 insert into language
(language_code, code_description, version, id)
values (en, English, 0, 1) was aborted.
Call getNextException to see the cause.
Caused by: Batch entry 0 insert into language
(language_code, code_description, version, id)
values (en, English, 0, 1) was aborted.
Call getNextException to see the cause.
Class: LanguageController
At Line: [125]
Code Snippet:
어떤 도움? 당신이 LanguageCommand.groovy 클래스를 생성합니다 src/groovy
에서
왜'src/java'에'.groovy' 클래스를 넣고 있습니까? 고유 한 제약 조건을 테스트하기위한 –
은 http://grails.org/doc/latest/guide/hibernate.html#addingConstraints –