1. The default method getStatus in Handler interface accepts exchange as an argument so that status code can be set there. 2. In AbstractRpcHandler.completeExchange, don't overwrite status code if there is a result. The default 200 will be used if not set.