Fix registration update processing

Only update registration properties for which a non-null value has beenprovided
The handling of improper arguments in method calls is subject of arbitrary discussions, as far as I am concerned :-) I do not want to start a religious war about it but wanted to point out that there are other opinions regarding this issue. In particular, the excellent "Effective Java" book recommends to use Java's standard exceptions for specific cases of inappropriate arguments, e.g. using an ArrayIndexOutOfBoundsException in the case indicated by you and to use a NullPointerException in case of a null value for an argument that is not supposed to be null. Then use IllegalArgumentException for other, generic reasons of inappropriateness ...
Again, I am also fine with always using IllegalArgumentException in cases where null is not allowed. But we should try to be consistent across the code. So, if you would like to stick with IllegalArgumentException, I am fine with that and would be glad to help you in fixing this ... we should then also document this kind of exception in the method level JavaDocs.