Hi all,
Looking at the paginated repeater patch [1], I again encountered the problem of non-displayed widgets that can have validation errors and therefore forbid form validation, leading to confusing situations for the user.
A general solution for this problem could be to "bubble up" validation errors: when the validation error or a widget changes (including when it's set to null), the widget notifies its parent of this fact. That can allow us to easily implement validation-error gatherers in container widgets to display that there's a problem "somewhere" in the container.
For example, in the case of paginated repeater, page numbers or scrolling buttons may give visual feedback if errors exist outside of the displayed page.
For wizards, we could have group or struct widgets representing each page which, by gathering errors raised by their children, would allow to display a global validation status of the wizard or drive the user back to offending pages.
Thoughts?
Sylvain
[1] http://issues.apache.org/bugzilla/show_bug.cgi?id=30213
-- Sylvain Wallez Anyware Technologies http://www.apache.org/~sylvain http://www.anyware-tech.com { XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
