2014-07-02 85 views
0

我有我的GSP頁面中的多選下拉這樣的:多重驗證錯誤後,選擇不填充

 <g:select id="subwidget" name="subwidget.id" 
      from="${com.foo.model.Widget.findAllByInactive(false,[cache:true])}" 
      optionKey="id" optionValue="name" required="" 
      noSelection="['':'---Select---']" 
      class="many-to-one" multiple="true" 
      value="${ widget.subwidget}" style="width:137px;"/> 

當我去編輯Widget的紀錄,我的subwidgets正確填充。但是,如果頁面上存在驗證錯誤,與子小部件無關,然後頁面重新加載,並且我的所有數據都是其中的內容 - 除了子小部件外。被選中的Subwidgets(如果我改變了它們)現在都沒有了。

想法?

回答

0

我想清楚發生了什麼事 - 該對象的更新時間很長,更新子小部件是最後一件事情之一。將subwidget部分移動到更新的開始處就是一招。 Grails必須快速離開,而不是在那裏完成更新服務方法。