With Spring WebClient how do I deserialize different types for successful and failed responses