【发布时间】:2012-03-31 09:05:14
【问题描述】:
Grails 1.3.7
数据绑定存在 List 内容的 Command 对象的问题。示例命令:
class Tracker {
String name
String description
List<Unit> units = new ArrayList()
}
class Unit {
String name
Long unitMax
Long unitMin
}
为 Tracker 创建 GSP 具有 Unit 字段。一个例子:
<g:textField name="units[0].unitMax" value=""/>
TrackerController保存方法:
def save = { Tracker trackerInstance ->
trackerInstance = trackingService.saveOrUpdateTracker(trackerInstance)
}
但是,总是 java.lang.IndexOutOfBoundsException
或者,如果我将控制器更新为:
def save = {
Tracker trackerInstance = new Tracker()
trackerInstance.properties = params
....
然后 groovy.lang.ReadOnlyPropertyException:无法设置只读属性:类的属性:com.redbrickhealth.dto.Tracker 有任何想法吗?
GORM 与 Command 对象中的绑定似乎有所不同。
也许我需要为 Unit 扩展和注册 PropertyEditorSupport?
-托德
【问题讨论】: