A null bean supplied in an update will, eventually, throw a null pointer exception but with an unhelpful message far down the stack. All public methods should intercept null arguments and throw an NPE before passing control off.
This is needed in the rewrite of the cet beans, since it is possible to get back null beans from them. Since some of their update methods (which are being removed as part of the refactoring) catch null beans and some don't, it is better that the session handle this and that the bean utils use that rather than re-writing NPE handling machinery all over the place.