This is how I solved it for now: - I have overridden FormTable#onProcess() in my own AbstractFormTable class - Copied the entire contents of FormTable#onProcess() - In method onProcess() cast the column to my AbstractAttributeColumn - Ripped out the Ognl.setValue(...) part and replaced it with myColumn.setProperty(row, field) - implemented the setProperty() in various subclasses
This has resulted in a very clean AbstractAttributeColumn which implements the methods getProperty(Object row) and setProperty(Object row, Field field). I can use the Field to get the Stirng value and parse it to fit my object. So yes, that would definately work for me. :) If I can do anything to help Click make more progress I'd be happy to offer my help. Cheers, WarnerJan On Thu, 2009-04-23 at 14:00 +0200, Bob Schellink wrote: > WarnerJan Veldhuis wrote: > > > > Now comes the anti-climax: when that form is submitted, there is no way > > to manually set the value for that field. Since the name of the Field > > will look like "SA_15", the Ognl lib will look for a property > > ModelObjectVO#setSA_15(Object) which is obviously not going to work, > > since the value needs to be set on the AttributeVO. > > > > I immediately wanted to override FieldColum#setValue(), but there was > > none :(. > > > Hmm to handle your use case it seems FieldColumn will need a new > method setProperty which by default uses OGNL to copy the value to the > Object. For more complex use cases it can then be overridden. > > Would that work for you? > > kind regards > > bob
