Hi Kevin, On Jun 3, 2011, at 9:54 AM, Kevin Hinkson wrote:
> Hi,
> I've implemented the following on an EO:
>
> public void validateForSave() throws NSValidation.ValidationException {
> public String validateEmail(String newEmail) throws
> NSValidation.ValidationException {
>
> validateEmail I assume is called by validateValueForKey so I can apply
> attribute specific checks.
It is actually called by validateTakeValueForKey. That method is called by the
WOForm elements (e.g. WOTextField) so that validation happens during the
takeValueFromRequest phase.
validateEmail is also called by validateForSave, so you don't need to implement
this validation twice (you DO need to call super.validateForSave()).
> When one of my checks fail I do:
>
> throw new NSValidation.ValidationException("Please enter a valid email
> address.");
>
> In either case (with only one enabled at a time) validateForSave and
> validateEmail can be seen throwing an exception which I log but this is only
> thrown after the EO is inserted into the database which is done by saving the
> editing context.
The EO is in the database when you get this error? That seems unlikely. It
should be thrown during ec.saveChanges() before getting written to the
database. Check the stack trace.
> Is this how it is supposed to work? I thought that these would be triggered
> before insert:
> http://wiki.objectstyle.org/confluence/display/WO/EOF-Using+EOF-Validation
> and either would prevent insertion.
>
> Am I doing it wrong?
I think that it is working correctly and that you are misinterpreting what you
are seeing. Can you post the stack trace from the
NSValidation.ValidationException?
Chuck
--
Chuck Hill Senior Consultant / VP Development
Come to WOWODC this July for unparalleled WO learning opportunities and real
peer to peer problem solving! Network, socialize, and enjoy a great
cosmopolitan city. See you there! http://www.wocommunity.org/wowodc11/
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
