Grails验证rejectValue错误

时间:2014-09-10 10:48:01

标签: grails validation

我使用服务来验证一个复杂的命令对象..

在我的一项测试/验证中,我有......

if (!txn.documentHeader) {
        println "Received ${txn.documentReferenceCode}"
        errors.rejectValue('documentReferenceCode', "document.not.found",
                [txn.documentReferenceCode].toArray(), 'Document not found')
        println "Recorded ${errors.getFieldError('documentReferenceCode').rejectedValue}"
} else {  ...

当我测试这个时,我得到了..

Received  NOT EXIST
Recorded  NOT EXIST

这是正确的..

我在另一项服务中有类似的测试(我看不出任何区别)..

println "Received ${txn.fromTag.documentHeader.documentReferenceCode}"
         errors.rejectValue('fromTagCode', "tag.document.state.error",
         [txn.fromTag.documentHeader.documentReferenceCode].toArray(),
         'Document not in correct state')
println "Recorded ${errors.getFieldError('fromTagCode').rejectedValue}"

当我测试产生..

Received Fault
Recorded null

..我失去了被拒绝的价值 - 我的测试失败了......任何人都有任何想法????

谢谢

1 个答案:

答案 0 :(得分:0)

我的错误...记录的拒绝值是被拒绝字段的内容值(字段' fromTag')而不是传递给rejectValue的值作为最终在屏幕上的参数(txn。 fromTag.documentHeader.documentReferenceCode)..所以一切都好!