Having a look at jdbc2.AsbtractJDBC2ResultSet (the parent of all ResultSets) I 
discovered that all data received from the server is handled internally as a 
string (right?) and is converted from the getXXX methods into the appropriate 
type. This means that you can actually write a getString on a date field 
obtaining a valida date (and if you are lucky you can do something the 
opposite). I'm curious to know if this is an implementation choice or a jdbc 
specification and why the objects are not checked against the table metadata 
(as the getInternalObject method does).
Thanks,
Luca