Null value replacement makes my head hurt. It bit me, because it worked exactly the OPPOSITE of what I expected.
When doing a select, if the database value is null, ibatis will use the replacement value for your result. When doing an insert, if the parameter property is the replacement value, it'll put null in the database. So in this case, it's doing nothing. :-/ However, IIRC, if you set thing.animal to false, it'll use null in the database instead. Larry PS: Hey, aren't you the captain of "The Love Boat"? Oh, no that was Gavin MacLeod...nevermind. :-P