Your domain is not for doing anything 'after' doing it on the client.
Think it the other way around: You validate on the server, and as an extra you do it on the client to make your user happy.
First you should make sure the things you want to be validated should be done in the first place on the Domain Model (probably in the set() method).
Then you can (as an extra feature for your users) do that also on the client, BUT its JUST to give the user faster feedback on what it did wrong during input. NEVER a replacement. Its never ment to prevent the user to do something which brings your model in an invalid state.
Also when you make a model persistent, you should always check if it's in a valid state. And invalid contents will make it invalid, and thus you shouldn't save it. Also when you are applying changes to multiple models (entities) in your application, make sure you do a transaction, to validate both models and make sure not one of them is saved in an invalid state.