У меня есть форма с одним полем из объекта представления, основанного на объекте объекта.Остальные поля таблицы имеют значения по умолчанию.Я даю значения по умолчанию для метода EOImpl.create.Когда страница загружается, объект представления выполняется с параметрами, и если есть результат, он находится в режиме редактирования, и если результата нет, я вызываю createInsertRow.
<invokeAction id="executeWithParams" Binds="ExecuteWithParams"
RefreshCondition="#{bindings.MyVO1Iterator.estimatedRowCount != 0}"
Refresh="default"/>
<invokeAction id="createInsert" Binds="CreateInsert"
RefreshCondition="#{bindings.MyVO1Iterator.estimatedRowCount == 0}"
Refresh="default"/>
<action IterBinding="MyVO1Iterator" id="CreateInsert"
InstanceName="MyAppModuleDataControl.MyVO1"
DataControl="MyAppModuleDataControl"
RequiresUpdateModel="true" Action="ExecuteWithParams"/>
<action IterBinding="MyVO1Iterator" id="CreateInsert"
InstanceName="MyAppModuleDataControl.MyVO1"
DataControl="MyAppModuleDataControl"
RequiresUpdateModel="true" Action="executeWithParams"/>
<NamedData NDName="" NDvalue="" NDType=""/>
У меня проблема с порядком выполнения (создание вставки запускается при втором входе на страницу).Другая проблема, с которой я столкнулся, заключается в том, что если пользователь не вводит данные в поле, я хочу откатить строку без каких-либо ошибок валидации, но похоже, что валидация происходит (возможно, потому что я задаю поля по умолчанию?)
Я также попытался вызвать строку create из класса VOImpl на основе условия .first () == null.Это работает правильно для моей первой ошибки, но я все еще получаю ошибку проверки при выходе из страницы.
Чего мне не хватает?
Спасибо