聲明:我希望在開始使用框架之前瞭解了一下。但是就目前而言,我缺乏這一方面,因此也就是問題所在。ErrorBinding Spring portlet MVC
我正在使用Spring-Portlet MVC。
我有一個流程,其中我在屏幕上進行輸入,驗證輸入,根據其結果,呈現相同的屏幕或下一個屏幕。
實現細節:
我有一個動作方法,其採用的形式支持命令對象。它檢查輸入的輸入是否有效。如果它無效,它會在BindingResult實例中填充錯誤消息,它將作爲另一個參數。
我們有不同的渲染方法來渲染不同的屏幕。
我在這些渲染方法中將命令對象作爲參數。我收到的這個命令對象與傳遞給action的命令對象相同。
問題:
雖然重新描繪的屏幕彈簧-MVC應綁定填充在操作方法的錯誤消息。目前,當我將命令對象作爲render方法中的參數時,spring-mvc以某種方式無法綁定該錯誤消息。但是有趣的是,如果我不在render方法中將命令對象作爲參數,而是在那裏創建一個新的命令對象,它就能夠綁定錯誤消息。
可以,有一個更好地瞭解spring-portlet mvc的人請解釋這種行爲,或者告訴我缺乏理解。
問候,
Mawia
編輯:只是爲了充實以下答案:雖然我沒有完全隔離這是造成上述現象的問題,但我遇到了我的要求是使用的ModelAttribute方式。 ModelAttribute可用於方法或方法的參數。它確保模型將可用於所有的調用,直到渲染視圖(這是我的理解!)。因此,我們不需要將命令對象作爲Render方法中的參數,只需使用ModelAttribute在action方法中註釋commandObject參數,然後就可以從下面的答案中建議的模型返回同一個對象。