Here is the reason, you changed to the interface what is right, but the setter doesn't know about that. I used the explicit class in there.