added more exception handling to RoleClient