Joe Bodell
unread,Aug 19, 2010, 5:03:02 PM8/19/10Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to reacto...@googlegroups.com
All,
Interesting issue I'm hoping someone has confronted before. I have a column that exists on several tables that serves a purpose in a system that's completely separate from mine. The field has an MSSQL datatype of timestamp, and contains a bunch of hex data. When Reactor auto-generates the validator object for tables which have this field, the metadata structure indicates that the field's cfDataType = numeric and cfSqlType = cf_sql_timestamp.
As a result, the validate{field}Datatype method attempts to verify that Record.get{field}() is of length greater than zero and that its value is numeric. HOWEVER, when the validate() method (which in turn calls all the field-specific validation methods, etc) is run, Reactor spits back an unhandled exception with the text "ByteArray objects cannot be converted to strings." Dumping out Record.get{field}() indicates that the value is a binary object. Is this something that might be written up as a bug on Reactor (to be fixed in Validator.Project.xsl, perhaps?), a quirk in MS SQL200x, a little bit of both, or something entirely different?
It's worth noting that my current workaround is to override the Validate{field} method in the custom validator -- this works just fine for the time being as our system never cares about this field -- but it would be nice if we didn't have to override the base validation method every time this field pops up in the database (over whose schema my team has no direct control).
Thoughts?
--Joe Bodell