On Oct 19, 2011, at 10:52 AM, Michael Gargano wrote:
Hi all,
I'm still having some occasional issues with EOF validations (2 things in particular)...
1) For some attributes (it seems like attributes that are type intNumber, but there may be others too), I'm getting validation error messages that end with "is not a valid ?".
I had that problem the other month on all my attributes, but it had to with the d2w libs I had in the build path at the time, those are gone now and I don't know why this happens or the best way to handle it.
In ERExtensions ValidationTemplate.strings file I see:
"ValueConversionException" = "The value entered for <b>@@displayNameForProperty@@</b> is not a valid <b>@@attribute.valueClass@@</b>.";
The display name for your property is created correctly because there is a displayNameForProperty() method on ERXValidationException.
There's no attribute() method on ERXValidationException, so it goes to the validation context object for an answer.
If you don't have a validation delegate to supply a context and you haven't set a context manually, you end up with a '?' replacement character.
2) Somewhat related to this... I have some EO attributes with names that make sense in the business domain, but should be called something else when surfaced to the user. So, the attribute might be fancyBusinessObjectName, but when I catch the exception and show the message I want it to be displayed as "User Non Scary Name".
Is there a way to do either of these things without just doing string replacements on the message from the exception, perhaps something in userInfo?
Thanks.
-Mike
In the example above, you could add something like:
"PropertyKey.fancyBusinessObjectName" = "User Non Scary Name";
To your english strings file and get the desired results. It's also done as
"MyEntityName.fancyBusinessObjectName" = "User Non Scary Name";
In some places. Not sure which will work for you.
Ramsey