添加callback的异常支持