It won't necessarily have been logged. What level would you suggest?

I'm a bit unsure of catching these ClassCastExceptions. The ones I expect this to catch will be thrown by the TypeCoercions methods. I would prefer TypeCoercions to throw something more specific (perhaps extending ClassCastException) so that we could treat them as bad requests, then all other ClassCastExceptions as server errors.