From b997a2d8706f68e3d034666b59274cbf7f19c05e Mon Sep 17 00:00:00 2001 From: noear Date: Sun, 30 May 2021 22:52:42 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0solon=E9=80=82=E9=85=8D?= =?UTF-8?q?=E5=8F=8Ademo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/pj/test/GlobalException.java | 45 +++++++++---------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/sa-token-demo/sa-token-demo-solon/src/main/java/com/pj/test/GlobalException.java b/sa-token-demo/sa-token-demo-solon/src/main/java/com/pj/test/GlobalException.java index d762c10a..044efaa4 100644 --- a/sa-token-demo/sa-token-demo-solon/src/main/java/com/pj/test/GlobalException.java +++ b/sa-token-demo/sa-token-demo-solon/src/main/java/com/pj/test/GlobalException.java @@ -13,33 +13,32 @@ import org.noear.solon.core.handle.Context; * @author noear */ @Component -public class GlobalException implements EventListener { +public class GlobalException implements EventListener { @Override - public void onEvent(Exception e) { - if (e instanceof SaTokenException) { - Context c = Context.current(); - if (c != null) { - // 不同异常返回不同状态码 - AjaxJson aj = null; - if (e instanceof NotLoginException) { // 如果是未登录异常 - NotLoginException ee = (NotLoginException) e; - aj = AjaxJson.getNotLogin().setMsg(ee.getMessage()); - } else if (e instanceof NotRoleException) { // 如果是角色异常 - NotRoleException ee = (NotRoleException) e; - aj = AjaxJson.getNotJur("无此角色:" + ee.getRole()); - } else if (e instanceof NotPermissionException) { // 如果是权限异常 - NotPermissionException ee = (NotPermissionException) e; - aj = AjaxJson.getNotJur("无此权限:" + ee.getCode()); - } else if (e instanceof DisableLoginException) { // 如果是被封禁异常 - DisableLoginException ee = (DisableLoginException) e; - aj = AjaxJson.getNotJur("账号被封禁:" + ee.getDisableTime() + "秒后解封"); - } else { // 普通异常, 输出:500 + 异常信息 - aj = AjaxJson.getError(e.getMessage()); - } + public void onEvent(SaTokenException e) { + Context c = Context.current(); - c.result = aj; + if (c != null) { + // 不同异常返回不同状态码 + AjaxJson aj = null; + if (e instanceof NotLoginException) { // 如果是未登录异常 + NotLoginException ee = (NotLoginException) e; + aj = AjaxJson.getNotLogin().setMsg(ee.getMessage()); + } else if (e instanceof NotRoleException) { // 如果是角色异常 + NotRoleException ee = (NotRoleException) e; + aj = AjaxJson.getNotJur("无此角色:" + ee.getRole()); + } else if (e instanceof NotPermissionException) { // 如果是权限异常 + NotPermissionException ee = (NotPermissionException) e; + aj = AjaxJson.getNotJur("无此权限:" + ee.getCode()); + } else if (e instanceof DisableLoginException) { // 如果是被封禁异常 + DisableLoginException ee = (DisableLoginException) e; + aj = AjaxJson.getNotJur("账号被封禁:" + ee.getDisableTime() + "秒后解封"); + } else { // 普通异常, 输出:500 + 异常信息 + aj = AjaxJson.getError(e.getMessage()); } + + c.result = aj; } } }