I have a tabPanel using switchType="client".
I want to allow user to edit information on multiple tabs and hold off on validation until user clicks single save button.
Save button is tied to action in my page-scoped Seam component which first does a validation of the form fields and if there is an error it aborts without persisting, and an error message is displayed to user so they can fix problem and re-submit.
My problem is that under the hood, something (Seam?) is persisting my entity in the stack after I return a failure from my validation. So even though an error is displayed, the current state of the form has already been saved to the database.
Can anyone shed some light on this? I am confused why something is being persisted without my explicitly causing this to happen.
Any tips, pointers or references would be much appreciated.