2010-05-19 33 views
1

我已將Xwork從2.0.4升級到2.0.6(struts版本爲2.0.11.1)。字段驗證工作正常,但錯誤的關鍵不是。例如,我有一個名爲profile.name.firstName的必填字段。字段錯誤鍵現在以profile.profile.name.firstName形式出現。當錯誤來自Xwork驗證時,點符號中的第一個值總是重複。字段錯誤鍵隨Xwork升級到2.0.6

什麼可能會導致此問題的任何想法?

回答

0

有一個在getFullFieldName方法類VisitorFieldValidator的身體變化:

diff -rNau xwork-2.0.4-sources/ xwork-2.0.6-sources/ 

輸出:

  public String getFullFieldName(String fieldName) { 
+   if (parent instanceof AppendingValidatorContext) { 
+    return parent.getFullFieldName("") + field + "." + fieldName; 
+   } 
     return field + "." + fieldName; 
    } 

也試圖探討兼容性test results。 API在2.0.4和2.0.6之間似乎有很多危險的變化(幾個被刪除的方法)。開發人員不遵循版本控制規範,我想這種行爲可能會定期更改。即使沒有破損,也無法更新小版本。