2014-09-10 65 views
0

我使用一個服務來驗證一個相當複雜的命令對象..Grails的驗證rejectValue錯誤

在我的測試中一個/驗證我..

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 

這是正確..

我有一個類似的試驗(I可以看到沒有區別)在其他服務..

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 

..我失去了拒絕價值 - 我的測試失敗..任何人任何想法????

感謝

回答

0

我的壞..錄製的拒絕值是拒絕場(場「fromTag」)的含量值,而不是值傳遞給rejectValue作爲屏幕上的最終參數(TXN .fromTag.documentHeader.documentReferenceCode)。所以一切都很好!