Hello All, Have tried to search for this in the forums, but am not having much success due to the multiple concepts involved. I apologize in advance for the long post.
Question: is there a way to, after a Form has been submitted, create a new model object for that Form, based upon a value of a FormComponent within the Form, and then update that new Form model object with the values of the models of the other FormComponents in the Form?? For example, I have a Account editor, used to both create and edit Accounts, which consists of a Form containing a number of FormComponents, eg., account name, date created, etc. For the moment just consider the case of creating a new Account. The Account constructor requires the email address of the person who is to be the admin of the Account. Internally it converts that email address to a user object, saves that user to the db, and sets that user as admin of the Account. Therefore, one of the FormComponents in the Account editor is a TextField whose model is the email address of the admin to provide to the Account constructor. So far, so good. I have many editors like the one above for creating/editing other domain objects, and they work great. For them I initially set the editor Form model object to a new instance of the type of object to be edited, and then update that model object using the models of the FormComponents in that respective editor. I understand and am using a homegrown variant of ICompoundModel without problem. Again, so far, so good. The problem: since the Account constructor requires the admin email address, and that address cannot be determined in advance, I cannot "pre-create" an Account to set as a blank model object to initialize the Account editor. It is possible I could give a fake admin email address to the Account constructor, but that would create a fake user in the db, who would then have to be deleted - I would rather avoid that. What I had hoped to be able to do is: upon Form submission, get the admin email address from the TextField (in the Form) which handles that. Create a NEW Account using that address (and handling any errors that occur). Set the model object of the editor Form as that newly-created account. Update that Form model object (new account) using the models of the other FormComponents, like I do successfully with my editors for other objects. I have read the docs and reviewed the source code - it seems I need to insert code to do the above in the chain of calls that flow from Form submission, after successful validation of FormComponents. My question is, exactly where? My best guess is override the editor Form's beforeUpdateFormComponentModels method, or perhaps the Form's updateFormComponentModels method, maybe even the process method?. Inital attempts at this have been unsuccessful. Any and all suggestions/constructive criticism appreciated. Thank you in advance for your time. -- View this message in context: http://www.nabble.com/create-new-model-object-of-a-Form-from-one-of-its-FormComp-values---tp14983110p14983110.html Sent from the Wicket - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
